一个 关于 数组 的问题
#include<stdio.h>
#include<string.h>
main()
{ int i;
char c[5];
puts(gets(c));
getch();
}
当我输入: abcdefghijkelmn 时为什么还能输出 :
abcdefghijkelmn 呢?
想不通.请大家指教.
搜索更多相关的解决方案:
include
----------------解决方案--------------------------------------------------------
不明白你的意思!
----------------解决方案--------------------------------------------------------
定义 char c[5];
为什么它能够 接收,输出 大于5个字符呢?
----------------解决方案--------------------------------------------------------
不可能吧!只定了一个5 位的数组?
----------------解决方案--------------------------------------------------------
以下是引用xiaohaima在2007-4-15 11:52:33的发言:
定义 char c[5];
为什么它能够 接收,输出 大于5个字符呢?
定义 char c[5];
为什么它能够 接收,输出 大于5个字符呢?
这和你的编译器有关!
你用VC就自己会多32位
你用gcc就不会了!
[此贴子已经被作者于2007-4-15 12:03:14编辑过]
----------------解决方案--------------------------------------------------------
可以呀 虽然你是定义的5个 但是输入是用的gets() 他是输入一个字符串 开始5个是装到你定义的哪个数组里
后面输入的就到哪个数组后面的存储 这样 你输出还是那么多
----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include<string.h>
main()
{ int i;
char c;
puts(gets(&c));
getch();
}
这样都行...
[此贴子已经被作者于2007-4-15 12:22:11编辑过]
----------------解决方案--------------------------------------------------------
以下是引用I喜欢c在2007-4-15 12:09:27的发言:
不懂??????
#include<stdio.h>
#include<string.h>
main()
{ int i;
char c;
puts(gets(&c));
getch();
}
这样都行...
[此贴子已经被I喜欢c于2007-4-15 12:23:42编辑过]
----------------解决方案--------------------------------------------------------
应该是个比较危险的操作~``
----------------解决方案--------------------------------------------------------
别卖关子, 指点一 二阿!!
----------------解决方案--------------------------------------------------------