Struct C-从动态内存访问结构
我正在用struct Record编写一个程序。当我从循环中的文本中读取记录时,在将缓冲区保存到数组中之前,我将它们分配到缓冲区。nRange只是正在读取的记录总数Struct C-从动态内存访问结构,struct,malloc,Struct,Malloc,我正在用struct Record编写一个程序。当我从循环中的文本中读取记录时,在将缓冲区保存到数组中之前,我将它们分配到缓冲区。nRange只是正在读取的记录总数 Record *storage; storage = (Record*)malloc(nRange*sizeof(Record)); Record buffer; storage[i] = buffer; 我想访问存储器[I]以检查记录是否保存到内存中,但我不能完全理解语法。我试着说: printf("%d \n", &
Record *storage;
storage = (Record*)malloc(nRange*sizeof(Record));
Record buffer;
storage[i] = buffer;
我想访问存储器[I]以检查记录是否保存到内存中,但我不能完全理解语法。我试着说:
printf("%d \n", &storage[i].x);
但我认为这只是给了我存储[I]中记录的x值的地址。如果有人能告诉我确切的语法,我将不胜感激。你想得太多了。您只需编写
存储[i]
,就像分配它一样
printf("%d \n", storage[i].x);
你想得太多了。您只需编写
存储[i]
,就像分配它一样
printf("%d \n", storage[i].x);
我以前也尝试过,它给了我一些大的负数……但是我仔细检查了我的代码,我对两个嵌套循环使用了相同的变量,这让我很反感。谢谢我以前也尝试过,它给了我一些大的负数……但是我仔细检查了我的代码,我对两个嵌套循环使用了相同的变量,这让我很反感。谢谢