c语言,int a,b;和int a;int b有什么不同

书上这样说:main函数第7行(inta=1,b=2,c=3;)的变量c的作用域,如果改成intc;结果如何?... 书上这样说:main函数第7行(int a=1,b=2,c=3;)的变量c的作用域,如果改成int c;结果如何? 展开
 我来答
追梦者丶SuperLee
2018-04-14 · 超过17用户采纳过TA的回答
知道答主
回答量:33
采纳率:100%
帮助的人:2.3万
展开全部

int a, b; 和 int a; int b;是一样的。  作用域的话你应该考虑这个变量是全局变量还是局部变量。比如下面这段程序,a和b的作用域就是main函数,而c的作用域就是add函数,只有当运行add函数时才从系统内申请内存给c然后c只在add函数内有效,当add函数执行完后就会释放c的内存。a和b是在main函数执行完后再释放。

如果不懂你把原题发给我我帮你看看。

#include <iostream>
using namespace std;

int main()
{
    int a, b; // 等于 int a; int b;
    a = 1;
    b = 2;
    int add(int v1, int v2)
    {
        int c;
        c = v1 + v2;
        cout << c << endl;
    }
    add(a,b)
    return 0;
}
White_MouseYBZ
2018-04-14 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6699万
展开全部
int a,b;合法,int a;int b非法,因为b后少了分号。其余没有区别。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淦海瑶s1
2011-11-24 · TA获得超过3646个赞
知道大有可为答主
回答量:3341
采纳率:100%
帮助的人:767万
展开全部
没区别,只是写的字符多一点
追问
书上这样说:main函数第7行(int a=1,b=2,c=3;)的变量c的作用域,如果改成int c;结果如何?
追答
你说的是作用域问题,但是建议不要这么玩,累
最好在函数的开始就定义好所有的变量,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Z_XLONG
推荐于2018-04-15 · 超过10用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:21.6万
展开全部
这样的声明都是一样的,但是,建议使用第二种,这样的代码的层次性,可读性更好。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
柒号的早晨
2011-11-24
知道答主
回答量:10
采纳率:0%
帮助的人:1.7万
展开全部
没区别,只是后面的分开定义了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式