⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_45363.htm

📁 vc
💻 HTM
字号:
<p>
序号:45363 发表者:江小刚 发表日期:2003-06-29 18:44:05
<br>主题:请教一个输入输出问题!
<br>内容:#include&lt;stdio.h&gt;<BR>main()<BR>{<BR> char a1[5],a2[5],a3[5],a4[5];<BR> scanf("%s%s",a1,a2);<BR> gets(a3); gets(a4);<BR> puts(a1); puts(a2);<BR> puts(a3); puts(a4);<BR><BR>}<BR>当从键盘输入:aa(空格)bb(回车)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cc(空格)dd(回车),以上程序运行的结果是:<BR>aa<BR>bb<BR><BR>cc(空格)dd。<BR><BR>结果是如何来的呢?我认为:gets送字符串给数组为实际字符串中字符个数加一个字符,而数组长度只有5,cc(空格)dd为5个字符,gets后为6个(多了'\0'),如何容纳?这是我的理解,我实在找不出为什么是这个答案(编译结果是这样的),请大家帮我解释一下!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:cbjszy 回复日期:2003-06-29 20:06:54
<br>内容:我的理解是这样的:<BR>scanf以“空格”或“回车”来作为输入结束标识,“空格”或“回车”本身不传给变量,<BR>所以a1,a2的值为"aa"和"bb";但第一个“回车”又作为a3的输入值被a3获得,所以a3的值为“回车”符;a4的值为"cc dd“回车符”"。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:cbjszy 回复日期:2003-06-29 20:09:02
<br>内容:a4的值为"cc dd"
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -