随笔 - 78  文章 - 1  trackbacks - 0
<2012年12月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用链接

留言簿(1)

随笔分类

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

今天做了这样一个实验 定义了一个结构体数组,居然编译不过,百思不得其解,百度后得释。 typedef struct tagTDefStruct { int a[10]; }TDefStruct[10]; memset(TDefStruct, 0, 10*sizeof(TDefStruct)); -----这个到底要怎么初始化 memset(TDefStruct, 0, sizeof(TDefStruct));????? 编译出现错误:parse error before 。。。 这是为啥呢?我看人家代码就是这样写的呢,可以正常运行啊,为什么连编译都不过。 百度结果: 这证明你使用的编译器只支持C89标准。 这个C标准要求在一个块内的变量的声明放在所有非声明语句的前面。 C99及C++标准无此限制。 之后, 就把代码改成如下方式: typedef struct tagTDefStruct { int a[10]; }TDefStruct; TDefStruct tDefStruct[10]; memset(tDefStruct, 0, 10*sizeof(TDefStruct)); OK 编译通过。
posted on 2012-12-07 21:13 Carrie 阅读(146) 评论(0)  编辑 收藏 引用 所属分类: C语言

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理