关于C++的一些基础问题。但我还是不知道。。。。。
常量:描述在程序运行中值不发生变化的数据。请挑出下列常量中合法的描述。'a','\n','\x1f','\101','\018','\ab',"a",0x123,0239...
常量:描述在程序运行中值不发生变化的数据。请挑出下列常量中合法的描述。
'a', '\n', '\x1f' , '\101', '\018', '\ab', "a", 0x123, 0239, "0", 123, e9, 1e2.2
求解答。。。。 谢谢!!! 展开
'a', '\n', '\x1f' , '\101', '\018', '\ab', "a", 0x123, 0239, "0", 123, e9, 1e2.2
求解答。。。。 谢谢!!! 展开
5个回答
展开全部
首先你要把常量的意思弄明白!!!
常量分好多种:
'a'——字符型常量
'\n'——特殊字符型常量
'\x1f'——合法字符型常量(十六进制数)
'\101'——不合法
'\018'——不合法(八进制出现8了)
'\ab'——不合法
"a"——不合法(用双引号表示是字符变量)
0x123——合法十六进制整型常量
0239——不合法八进制整型常量(最大只能出现7)
"0"——合法整型常量
123——合法整型常量
e9——不合法的浮点型常量
1e2.2——不合法浮点型常量
推荐你一本书《C程序设计第三版》 作者:谭浩强。
里面关于这些有很详细的解释,比较适合有一点基础的初学者
常量分好多种:
'a'——字符型常量
'\n'——特殊字符型常量
'\x1f'——合法字符型常量(十六进制数)
'\101'——不合法
'\018'——不合法(八进制出现8了)
'\ab'——不合法
"a"——不合法(用双引号表示是字符变量)
0x123——合法十六进制整型常量
0239——不合法八进制整型常量(最大只能出现7)
"0"——合法整型常量
123——合法整型常量
e9——不合法的浮点型常量
1e2.2——不合法浮点型常量
推荐你一本书《C程序设计第三版》 作者:谭浩强。
里面关于这些有很详细的解释,比较适合有一点基础的初学者
展开全部
'\101', '\018','a',0x123,0239,123,1e2.2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这种题目只会在作业和考试中出现,实际应用中基本不会碰到
‘a’,字符a的数值,好像是97
0x123,16进制下的123
0239,8进制下的239
123,10进制下的123
1e2.2,浮点数的一种表示方法
以上均为常量
‘a’,字符a的数值,好像是97
0x123,16进制下的123
0239,8进制下的239
123,10进制下的123
1e2.2,浮点数的一种表示方法
以上均为常量
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有这么几个原则:
单引号内是字符常量,一般是一个byte
双引号内是字符串常量,编译器会自动添加\0在末尾作为结束符
\转义序列里,\ddd为三位八进制 ,\xhh为二位十六进制。
整形常量,0开头的是八进制表示,0x开头为16进制表示,0b开头为2进制表示。
科学计数法,必须是以数字开头,指数为整数。
所以 '\018' 、0239(八进制最大数字为7)、 '\ab'(应该写作\0xab)、e9、1e2.2有误。
另外,多嘴一句,教科书上可以这么设问,编程的时候不要混用三位八进制与两位十六进制,以及十六进制整数与八进制整数常量。最好统一转换成16、10或者8进制,可在注释中说明。便于理解,避免维护中出错。
单引号内是字符常量,一般是一个byte
双引号内是字符串常量,编译器会自动添加\0在末尾作为结束符
\转义序列里,\ddd为三位八进制 ,\xhh为二位十六进制。
整形常量,0开头的是八进制表示,0x开头为16进制表示,0b开头为2进制表示。
科学计数法,必须是以数字开头,指数为整数。
所以 '\018' 、0239(八进制最大数字为7)、 '\ab'(应该写作\0xab)、e9、1e2.2有误。
另外,多嘴一句,教科书上可以这么设问,编程的时候不要混用三位八进制与两位十六进制,以及十六进制整数与八进制整数常量。最好统一转换成16、10或者8进制,可在注释中说明。便于理解,避免维护中出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符常量表示形式:
1. 'a'
2. '\x1f'
3. \n \t
\x表示后面的字符是十六进制,\0表示后面的字符是八进制,任意字符都可以以这种形式表示
\为转义字符,表示一些特殊字符,换行等
所以'a', '\n', '\x1f' , '\101' 都是正确的
而'\018' 0开头表示是八进制表示法,所以8超标了,错误
整型常量:
0x123 0x是16进制表示法,正确
0239 9超标了,错误
"a", "0", 表示字符串,虽然只有一个字符,但系统会自动再加个\0
e9, 1e2.2这两个记数法的很少用,不懂
1. 'a'
2. '\x1f'
3. \n \t
\x表示后面的字符是十六进制,\0表示后面的字符是八进制,任意字符都可以以这种形式表示
\为转义字符,表示一些特殊字符,换行等
所以'a', '\n', '\x1f' , '\101' 都是正确的
而'\018' 0开头表示是八进制表示法,所以8超标了,错误
整型常量:
0x123 0x是16进制表示法,正确
0239 9超标了,错误
"a", "0", 表示字符串,虽然只有一个字符,但系统会自动再加个\0
e9, 1e2.2这两个记数法的很少用,不懂
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询