C语言中:static char str[1]和char str[1]的区别

C语言中:
第一段代码
static char str[1];
gets(str);
puts(str);
运行后,输入abcdef,输出abcdef,不报错。

第二段代码
char str[1];
gets(str);
puts(str);
运行后,就报错。

现在不明白 为什么 加上static后 就不报错呢 而且能正确接受"abcdef"
多谢

第1个回答  2007-07-16
static表示后面定义的变量是永久性的,如果不加就是局部性的,有可能是这个问题,一般不大会出现.
第2个回答  2007-07-09
有可能与你用的编译器有关,我问了很多高人,都说你的第二个,没有错;有可能与你的程序有关本回答被提问者和网友采纳
第3个回答  2007-07-09
字符串定义必须加 static char

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网