结构体变量
#include <stdio.h>int main()
{
struct student
{
int num;
char name;
}stu = {001,"li"};
int print(struct student stu);
print( stu ); //这个好像有问题
}
int print(struct student stu)
{
printf("%d", stu.num);
printf("%s", stu.name);
} 系统提示错误error C2037: “num”的左侧部分指定未定义的结构/联合“student”
看不懂这个提示,我是照着代码打的,完全看不出哪错了 本帖最后由 mingcxx 于 2016-5-2 16:13 编辑
改了写了注释,就是这个:
#include <stdio.h>
struct student //结构模板的定义放在所有函数外,对所有函数可用
{
int num;
char name; //字符数组为字符串留足够空间
};
void print(struct student stu); //函数声明最好放在所有函数之外(方便编译器检查可能的参数错误等等)
int main(void)
{
struct student stu = { 001, "li" }; //声明struct student类型的结构变量并初始化
print(stu);
return 0; //main()函数的返回值
}
void print(struct student stu)
{
printf("%d\n", stu.num);
printf("%s\n", stu.name);
//不必返回一个值时就设置为void类型的返回值(也就是无返回值)
}
我的注释mingming是TabTab对齐的。。。似乎移植到这个框框里就凌乱了。。。凑合看哈 mingcxx 发表于 2016-5-2 16:06
改了写了注释,就是这个:
我的注释mingming是TabTab对齐的。。。似乎移植到这个框框里就凌乱了。。。凑 ...
太感谢了,你说的我以后注意 444444 发表于 2016-5-2 16:52
太感谢了,你说的我以后注意
共同进步!哈哈 mingcxx 发表于 2016-5-2 17:20
共同进步!哈哈
今天刚下的vs2013,我发现写代码的时候,函数没有声明,没有头文件也照样能运行,这是为什么 444444 发表于 2016-5-2 22:35
今天刚下的vs2013,我发现写代码的时候,函数没有声明,没有头文件也照样能运行,这是为什么
抱歉,我暂时还没学到关于这些#的预处理细节。
不过你可以看看这个帖子,应该有帮助的,http://bbs.csdn.net/topics/300104279
页:
[1]