|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 简单问题,高手莫进
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
2005
人关注过本帖
标题:
简单问题,高手莫进
只看楼主
加入收藏
cnfarer
等 级:
版主
威 望:
179
帖 子:3330
专家分:21157
注 册:2010-1-19
结帖率:
85.71%
楼主
收藏
已结贴
√
问题点数:20 回复次数:23
简单问题,高手莫进
C陷阱与缺陷中的一个小问题,供新手讨论.
#include <stdio.h>
int main()
{
int i;
char c;
for (i=0;i<5;i++){
scanf("%d",&c);//后果是什么?
printf("\n%d
",i);
}
return 0;
}
搜索更多相关主题的帖子:
include
2011-11-17 21:22
举报帖子
使用道具
赠送鲜花
moriyayu
等 级:
新手上路
帖 子:3
专家分:2
注 册:2011-11-17
第
2
楼
收藏
得分:2
我是刚学的
感觉是C 变成了
\0
....
不知道对不对
2011-11-17 21:41
举报帖子
使用道具
赠送鲜花
将是高手
等 级:
新手上路
帖 子:79
专家分:5
注 册:2011-6-18
第
3
楼
收藏
得分:2
猜的
比如输入的是“a”,但是相应地址里却储存着“97”。
哈哈,不知道对不对。
2011-11-17 21:56
举报帖子
使用道具
赠送鲜花
蛋蛋花
等 级:
新手上路
帖 子:4
专家分:2
注 册:2010-11-28
第
4
楼
收藏
得分:2
小弟在电脑试了一下,代码运行的时候,c根本就得不到输入的值。不知道怎么回事。希望高手出来解答
2011-11-17 21:57
举报帖子
使用道具
赠送鲜花
moriyayu
等 级:
新手上路
帖 子:3
专家分:2
注 册:2011-11-17
第
5
楼
收藏
得分:0
回复 4楼 蛋蛋花
scanf是以\0和回车结束的
感觉是C已经把\0录取了~~~
2011-11-17 22:00
举报帖子
使用道具
赠送鲜花
zy_space
等 级:
职业侠客
帖 子:163
专家分:364
注 册:2011-11-14
第
6
楼
收藏
得分:2
我猜的,试一试:
在C语言中int类型的变量存储的的时候占4个字节的位置(大多数机器),而char类型的变量只占1个字节的位置。但是二者在进行运算操作的时候是通用的,就是说可以把char类型变量看做比较短的int类型的变量,反过来也可以把int类型的变量视为比较长的char类型的变量。但是在这段程序中的代码试图把比较长的类型的int数据存储到比较短的char类型的变量中,会造成数据溢出?。。。。猜测的,不知道对不对
何必等待?梦在今朝
2011-11-17 22:30
举报帖子
使用道具
赠送鲜花
馨梦惜夕
等 级:
论坛游侠
帖 子:54
专家分:190
注 册:2011-5-18
第
7
楼
收藏
得分:2
讨论这个 没意思
2011-11-17 23:16
举报帖子
使用道具
赠送鲜花
edward_eric
等 级:
论坛游民
帖 子:32
专家分:83
注 册:2011-10-5
第
8
楼
收藏
得分:2
输入字符属于非法输入,你的输入应该停留在缓冲区,然后一直循环。但是后面的循环不需要再输入了。没做实验,不知道对不。
2011-11-17 23:50
举报帖子
使用道具
赠送鲜花
diyox
等 级:
新手上路
帖 子:1
专家分:2
注 册:2011-8-22
第
9
楼
收藏
得分:2
回复 楼主 cnfarer
char c;
只表示声明了c,并没有分配空间。当然你取c的地址 &c 也是随机的了,如果这个随机的值正赶上正在使用的内存或不允许访问的内存,必挂。但无论如何警告肯定是有的。上面写法是不允许的。
2011-11-17 23:53
举报帖子
使用道具
赠送鲜花
embed_xuel
等 级:
贵宾
威 望:
58
帖 子:3845
专家分:11385
注 册:2011-9-13
第
10
楼
收藏
得分:2
回复 9楼 diyox
c是局部变量,分配在栈上,c和i是挨着的,这种用法往c上写了int型数据,很可能会改写了i的值,i变得很大,提前结束循环
总有那身价贱的人给作业贴回复完整的代码
2011-11-18 00:35
举报帖子
使用道具
赠送鲜花
24
1/3页
1
2
3
快速回复:
简单问题,高手莫进
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.017310 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved