早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c语言表达式值,究竟要不要算前面的0shorti=013,j=0x13,k;k=~i|j>>3;求k值。A.06B.0177776C.066D.0177766如果不算前面的0就是A,算0就是D究竟答案是多少,和short又有没有关系

题目详情
c语言表达式值,究竟要不要算前面的0
short i=013, j=0x13, k;
k=~i | j >>3;
求k值。
A.06 B.0177776 C.066 D.0177766
如果不算前面的0就是A,算0就是D
究竟答案是多少,和short又有没有关系
▼优质解答
答案和解析
0开头的是8进制数
0x开头的是16进制数
short占两个字节
013(O)= 0000000000001011(B)
~i是按位取反 = 11111111 11110100
>>右移运算符,优先级高于位运算 j>>3
0x13(H)=0000000000010011
j>>3 = 00000000 00000010
|是位或
00000000 00000010 | 11111111 11110100 = 1 111 111 111 110 110=0177766,结果是D