当前位置: 代码迷 >> C语言 >> [求助]用这行吗??
  详细解决方案

[求助]用这行吗??

热度:298   发布时间:2007-05-31 00:15:01.0
[求助]用这行吗??

struct coord
{
char string[20];
};
struct coord list[3];
main()
{
FILE*fp;
fopen("aaaa","a+");
fwrite(list,sizeof(coord),3,fp);
}
当编译时说出错:coord没有声明。
使用fwrite(list,sizeof(list),1,fp);
没问题,
是不是不能用coord??
行的话该什么使用呢??
谢谢。


----------------解决方案--------------------------------------------------------

文件都没打开啊.

成员也没有值啊.


----------------解决方案--------------------------------------------------------
结构名(coord)和结构数组(list)是两个不同的概念,不能混淆。 结构名只能表示一个结构形式,编译系统并不对它分配内存空间。 只有当某数组被说明为这种类型的结构时,才对该数组分配存储空间。所以使用sizeof(coord)是错误的,另
fopen("aaaa","a+");应改为:
fp=fopen("aaaa","a+");

[此贴子已经被作者于2007-5-31 1:33:00编辑过]


----------------解决方案--------------------------------------------------------
明白,
谢谢啊。
----------------解决方案--------------------------------------------------------
  相关解决方案