定义变量和变量定义
发表在C语言图书答疑 2016-08-01
是否精华
版块置顶:
    《C语言 从入门到精通(第2版)》  P46  第3行:定义所有变量的步骤应该在变量的定义之前,否则会出现错误。
    请问,会出现什么错误,我按照书上例子编写,得出来的结果没有发现错误。
分享到:
精彩评论 3
again
学分:250 LV4
2016-08-01
沙发
意思是说 所有变量的定义,都要在 使用之前,如:

void foo() {
    int i=0;

    printf("%d", i);

    int j;   // 这一句会有错误。因为这个j的定义在 printf这一句之后。
}

你的文件扩展名必须是 .c  如果是.cpp 没有这个问题。
佚名
学分:70 LV3
TA的每日心情
开心
2021-07-05 14:21:40
2016-08-01
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
意思是说 所有变量的定义,都要在 使用之前,如:

void foo() {
    int i=0;

    printf("%d", i);

    int j;   // 这一句会有错误。因为这个j的定义在 printf这一句之后。
}

你的文件扩展名必须是 .c  如果是.cpp 没有这个问题。
[/FIELDSET]

回复:
#include<stdio.h>
int main()
{
    int a;
    a=5;
    printf("%d\n",a);
    int b;
    b=6;
    printf("%d",b);
    return 0;
}
扩展名是.c  这样写没有提示错误
  
again
学分:250 LV4
2016-08-01
地板
[FIELDSET][LEGEND]引自:2楼[/LEGEND]
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
意思是说 所有变量的定义,都要在 使用之前,如:

void foo() {
    int i=0;

    printf("%d", i);

    int j;   // 这一句会有错误。因为这个j的定义在 printf这一句之后。
}

你的文件扩展名必须是 .c  如果是.cpp 没有这个问题。
[/FIELDSET]

回复:
#include<stdio.h>
int main()
{
    int a;
    a=5;
    printf("%d\n",a);
    int b;
    b=6;
    printf("%d",b);
    return 0;
}
扩展名是.c  这样写没有提示错误
  
[/FIELDSET]

回复:

请看我上一篇回复的标题, 跟编译器有关, vs2010 就有问题。 vs2015 没问题。 至于中间的 2013 有没有问题没有试过。
  
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照