为什么这两行代码换个位置就报错
如图框框的两行代码,这样就可以正常运行,要是移到如图箭头处就会报错,不知道为什么不会呀#include<stdio.h>
int main()
{
struct stu
{
char *n; // 如果你要字符串,必须是指针或者数组
int num;
}ces = {"cwj",123};
printf("%d\n", ces.num);
struct stu *p;
p = &ces;
printf("%d\n",p->num);
return 0;
} claws0n 发表于 2018-10-8 21:29
不会呀
大佬大佬,为什么我复制你的代码到vc++6.0提示3个错误,还是因为这两行移到两个printf中间,要是移到上面就可以正常运行 一壶浊酒l 发表于 2018-10-8 21:55
大佬大佬,为什么我复制你的代码到vc++6.0提示3个错误,还是因为这两行移到两个printf中间,要是移到上面 ...
你报错的资讯是什么?之前是用 dev c++ 的,用 vs 试了也没问题~ claws0n 发表于 2018-10-8 22:03
你报错的资讯是什么?之前是用 dev c++ 的,用 vs 试了也没问题~
Compiling...
1.c
d:\program files (x86)\visual c++ 6.0\myprojects\99\1.c(13) : error C2143: syntax error : missing ';' before 'type'
d:\program files (x86)\visual c++ 6.0\myprojects\99\1.c(14) : error C2065: 'p' : undeclared identifier
d:\program files (x86)\visual c++ 6.0\myprojects\99\1.c(14) : warning C4047: '=' : 'int ' differs in levels of indirection from 'struct stu *'
d:\program files (x86)\visual c++ 6.0\myprojects\99\1.c(16) : error C2223: left of '->num' must point to struct/union
Error executing cl.exe.
1.obj - 3 error(s), 1 warning(s) claws0n 发表于 2018-10-8 22:03
你报错的资讯是什么?之前是用 dev c++ 的,用 vs 试了也没问题~
感觉编译器有毒…… 一壶浊酒l 发表于 2018-10-8 22:05
感觉编译器有毒……
printf("%d\n", (*p).num);最后一个也许要求这样,也许是 C89 的问题吧?必须先声明定义,才可以有运算等操作。
不要用 VC 了~ 版块有一篇置顶的文章
推荐用 dev c++ 入门,之后转 VS。 claws0n 发表于 2018-10-8 22:17
最后一个也许要求这样,也许是 C89 的问题吧?必须先声明定义,才可以有运算等操作。
不要用 VC 了~ 版 ...
我这台电脑不知道为啥,之前安装了vs2017可以用,可是重装系统后就不能安装vs了【抱头哭】{:5_104:},每次都是选择好安装项目后在下载的时候出错,而且听说以后考试要用vc,所以也没怎么注意这些编译器的问题 == 一壶浊酒l 发表于 2018-10-8 22:26
我这台电脑不知道为啥,之前安装了vs2017可以用,可是重装系统后就不能安装vs了【抱头哭】,每 ...
一些权限问题吧?
下载的时候把杀毒软件关掉,并以系统管理员的身份执行
考试用的话,我就不评论了{:10_260:} claws0n 发表于 2018-10-8 22:43
一些权限问题吧?
下载的时候把杀毒软件关掉,并以系统管理员的身份执行
考试用的话,我就不评论了{:10 ...
哈哈,,不清楚啊,下次安装再说吧,今天本来又试了几次,我看网上说是网络问题。。不太懂
页:
[1]