weijun_zhang 发表于 2021-3-28 21:23:41

关于 变量定义的位置不同,导致运行bug

代码1:可正常运行的代码
#include <stdio.h>
int main()
{
int i;
char j;
float k;

i=123;
j='C';
k=3.14;
                printf("int length=%d\n",sizeof(i));
      printf("char length=%d\n",sizeof j);
      return 0;
}

代码2:将变量定义放到main外面,就报错: conflicting types for 'j'   请问是为何呀?盼复,感谢
#include <stdio.h>

int i;
char j;
float k;

i=123;
j='C';
k=3.14;
int main()
{

                printf("int length=%d\n",sizeof(i));
      printf("char length=%d\n",sizeof j);
      return 0;
}

wuxudong 发表于 2021-3-29 19:51:19

好像一般的读取顺序是会读{}里面的,如果你写在了外面,不仅定义的字符它找不到,而且还不明白你的要这个符号是干什么

学C的大叔 发表于 2021-3-29 21:05:56

如果赋值放到main函数中,应该就不会报错了吧
页: [1]
查看完整版本: 关于 变量定义的位置不同,导致运行bug