社区
C语言
帖子详情
一个简单的问题,望高手帮忙!
cloverplus
2002-09-14 08:03:02
小弟不才,发现一个奇怪的问题,不能自解,希望各位高手能帮忙.
VC++中的 '***' 代表什么??
如:
cout<<'1234'<<endl;//并未出错,出现一个奇怪的号码.
...全文
55
16
打赏
收藏
一个简单的问题,望高手帮忙!
小弟不才,发现一个奇怪的问题,不能自解,希望各位高手能帮忙. VC++中的 '***' 代表什么?? 如: cout<<'1234'<<endl;//并未出错,出现一个奇怪的号码.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cloverplus
2002-09-14
打赏
举报
回复
谢谢alexxing(赤铸)兄讲的这么详细.我明白了!!
alexxing
2002-09-14
打赏
举报
回复
'1234' 不是错误的,是整数的另一种表示方法而已
普通编译器(如BC),只支持2个字符
NB 编译器(如WATCOM C),可以支持4个字符
VC 可能不支持 4 个字符,但应该支持 2 个字符
试试 cout << '12' ?
'1' = 0x31
'2' = 0x32
'3' = 0x33
'4' = 0x34
'12' = 0x3231
'1234' = 0x34333231 = 875770417
(或者 0x31323334 = 825373492)
edward0716
2002-09-14
打赏
举报
回复
出现这个可能性多数是:格式不对."***"可能是机器产生的随机数作为字符的ASCII码, 从而产生溢出, 因此输出为"***"等乱字符.
我的建议:如果你要输出字符串的话你必须得用双引号, 否则会出错.
一般单个字符可用单引号, 也可以用双引号.
另外,编译器也不能排除它的可能性,不过这只有百分之零点几的可能.其实,你上面的问题只要将单引号改为双引号就可以了.
以上只是我个人体会,如有不对,请您指正.多谢!
wzgtly
2002-09-14
打赏
举报
回复
如果编译器都不能通过,就有语法错误,对于一个错误的问题,你可以问他为什么错了,但不要把错误的强制成正确,甚至还要给出什么理由.
'1234'是错误的,它毫无意义!!!!
dsangvei
2002-09-14
打赏
举报
回复
我在BC3.1下不能编译:
cout <<'1234' <<endl;
error : charactor constant must be one or two char long
仅能用:
cout << '12' <<endl; //12849 ->hex :3231 -> '21'
但我在WATCOM C++ 10.6 下运行通过,输出为: 4 .
看来各个编译器对这种语法的检查都不一样。
netbian
2002-09-14
打赏
举报
回复
jone7318说的对
kwok_1980
2002-09-14
打赏
举报
回复
'1234'是825373492这样一个数,如果是'12345',你想想是多少???
还能表示吗? 一个constant可以这样大吗(int)?
jone7318
2002-09-14
打赏
举报
回复
‘’只能代表单个字符,其中只能放1到2个字符,在C++中用‘1234’,编译器无法解释所以输出***
cloverplus
2002-09-14
打赏
举报
回复
原来的程序是这样的:
#include <iostream>
using namespace std;
int main(void)
{
cout<<'1234'<<endl;
return 1;
}
结果是825373492,我只是不明白为什么会是这个数呢????
还有如果超过4个的话,编译器就显示出错,停止编译了!!!我试了很多遍都不行啊!!
kwok_1980
2002-09-14
打赏
举报
回复
***是指任意多个字符.(但是不超过四个)
>>怎么不会超过四个!?????
>>而且不是任意的!是固定的!不信,你自己试试吧!
kwok_1980
2002-09-14
打赏
举报
回复
是这个数的ASCII码!
#include <iostream>
using namespace std;
int main()
{
int a = '1234';
cout<< '1234' <<' '<< a <<endl;
return 0;
}
cloverplus
2002-09-14
打赏
举报
回复
***是指任意多个字符.(但是不超过四个)
请大家先编译一下再说好不好!
你们也一定会奇怪的!!!
cloverplus
2002-09-14
打赏
举报
回复
我不是想输出1234这几个字符,我只是想弄明白'1234'到底代表什么?
如果想输出1234,"1234"就可以了啊!
netbian
2002-09-14
打赏
举报
回复
""表示字符串
''表示字符
***什么意思也没有
cloverplus
2002-09-14
打赏
举报
回复
真的是因为'1234'我才不明白啊!!
如果我连单引号表示单个字符都不知,那我自杀好了!!!
不信你用vc编译一下,绝对无错!
Coder 青田
2002-09-14
打赏
举报
回复
'1234',这是什么???单引号一般只表示一个字符而已。如果你想输出1234的话 应该用双引号才对!cout<<"1234"<<endl;
数学问提(c语初学者)
今天看到的题目: 海滩上有一堆桃子,五只猴子来分,第一只猴子把这堆桃子凭据分成五分,多了
一个
,这只猴子就把多的
一个
扔到了海里!,拿走了一份,第二只猴子把剩下的桃子又平均分成五分,又多了
一个
,它同样把多的
一个
扔到了海里,拿走了一份,第三只,第四只,第五只都是这样做的,问海滩上原来有多少桃子 望
高手
帮
帮忙
! 发现还有点小难~!
网络硬盘的上传工具 File & Image Uploader
给大家介绍一款支持支持200多个网络硬盘的上传工具 File & Image Uploader (这个文件本人不会使用不知道是软件
问题
还是操作步骤错误望那位
高手
帮忙
指正:ghl621@163.com)。 简介: ZOOM File & Image Uploader 是一款支持多个网络硬盘的上传工具软件,它可以将文件分发到200多个主流网络硬盘中,不仅如此,ZOOM File & Image Uploader还针对视频分享站点和图片分享站点开发了上传接口,如果你想上传视频到YouTube,使用 ZOOM 就不用再登陆其网站,想上传照片到图片分享网站,也不用频繁登陆那些图片站点了。ZOOM File & Image Uploader有中文语言支持。
累加会员登陆时间
问题
,望
高手
帮忙
谢谢!(急!)
我是个新手,想做
一个
累加会员登陆时间的功能,要求做到。好比我昨天登陆了20分钟,今天登陆了30分钟,然后把昨天登陆的时间加上今天登陆的时间一共是50分钟保存到数据库中,当登陆时间累加到1小时时提示您登陆时间已满请升级,该怎么做呢望
高手
帮忙
!
写游戏到底应该学些什么,望
高手
帮忙
解答一下!
最近很是郁闷,尤其是现在开学的时候,因为一上课,总有老师要讲那么一节课的闲话的样子,
问题
是让我自己感觉他们是在吹牛,在吹嘘他们有多厉害,烦躁的很。 今天又有一老师,还是个女老师,印象蛮好的,只是我也不知道她说的是不是也是吹牛! 她问我们现在都学到了些什么,做些什么,当然有同学回答:除了游戏还是游戏!老师立即说:玩游戏可以,可是玩出点什么名堂没,能自己开发
一个
游戏不...
指定的网络名不可用
指定的网络名不可用 我的电脑不能被别人访问,无论从网上邻居还是用\\ip 都不可以,而且还报错 说指定的网络名不可用 ,但是可以PING通,这是怎么回事啊?还望
高手
帮忙
!!!谢谢!!! 我试过改计算机名,多次修改都没有用,还是不可以访问,防火墙也关了,也没什么用,另外在组策略里,我也把相应的项修改了,GUST也启用了,真的弄不明白是哪里出了
问题
!!!!!! ...
C语言
70,023
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章