2 qq 30137777 qq_30137777 于 2016.04.23 10:41 提问

C/C++static变量声明类型的问题
#include <iostream.h>

using namespace sd;
int main(){
    static b = 4;
    printf("%d\n", b);
    return 0;
}

为什么静态变量中没有为其指明类型,但在C中都能编译通过并打印b的值。在C++中却不行?为什么在C中,不对静态变量进行声明就能使用这个值呢?

3个回答

csdnzhch
csdnzhch   2016.04.23 11:52
已采纳

C 语言的默认规则,所有不声明类型的地方都默认是int 类型。例如 functionA(); 实际返回类型是int,不是void哦。

qq_30137777
qq_30137777 ?那c++呢?没有这种默认的说法么
一年多之前 回复
CSDNXIAOD
CSDNXIAOD   2016.04.23 10:52

c变量声明问题
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Gorgous
Gorgous   2016.04.23 11:49

好像不写类型默认是int

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!