当前位置: 代码迷 >> C语言 >> 一个 关于 数组 的问题
  详细解决方案

一个 关于 数组 的问题

热度:482   发布时间:2007-04-15 11:31:10.0
一个 关于 数组 的问题

#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个字符呢?

这和你的编译器有关!

你用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编辑过]


----------------解决方案--------------------------------------------------------

应该是个比较危险的操作~``


----------------解决方案--------------------------------------------------------
别卖关子, 指点一 二阿!!
----------------解决方案--------------------------------------------------------
  相关解决方案