c语言中0xaffbc等于多少,并写出计算过程

如题所述

0x是16进制的意思,a,b,c,d,e,f分别代表10,11,12,13,14,15,
所以0xaffbc=12+11*16+15*16^2+15*16^3+10*16^4,
自己算吧,有什么问题可以问我,我c语言不错哦
变量的类别:
根据作用域可分为全局变量和局部变量。
根据生存周期可分为静态存储方式和动态存储方式,具体地又分为自动的(auto)、静态的(static)、寄存器的(register)、外部的(extern)。
静态存储方式是指在程序运行期间分配固定的存储空间的方式,动态存储方式是在程序运行期间根据需要进行动态的分配存储空间的方式。

每一个变量均有作用域和存储类别两个属性,这些属性共同用于描述一个变量,这些不同类型的变量与存储位置的关系如下:
外部变量(全局变量)、静态外部变量、静态局部变量存储在静态存储区。
自动局部变量(局部变量默认为自动局部变量)、函数形参存储在动态存储区,不论是静态存储区还是动态存储区均属于内存中的用户区。
但是,寄存器变量是存储在CPU寄存器中的而不是内存中。

首先说明一下与作用域相关的几个属性:
局部变量:在一个函数内部定义的变量是内部变量,它只在本函数范围内有效,也就是说只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的,这种类型的变量就称为“局部变量”。
全局变量:在函数外定义的变量,可以为本源文件中其它函数所公用,有效范围为从定义变量的位置开始到本源文件结束,这种类型的变量就称为“全局变量”。

接下来说明一下与存储类型相关的几个属性:
atuo:在声明局部变量时,若不指定 static,默认均是 auto,这类变量都是动态分配存储空间的,数据存储在动态存储区中。
static:在声明局部变量时,使用关键字 static 将局部变量指定为“静态局部变量”,这样在函数调用结束后不消失而保留原值,即占用的存储单元不释放,在下一次函数调用时,该变量已有值就是上次函数调用结束时的值。
register:在声明动态局部变量或者函数形参时,可将变量声明为register,这样编译系统就会为变量分配一个寄存器而不是内存空间,通过这种方式可提升对某些局部变量频繁调用的程序的性能。(寄存器运算速度远高于内存)
extern:用于扩展全局变量的作用域,比如如果函数想引用一个外部变量,但该外部变量在该函数后定义,那么这个函数需要使用 extern 来声明变量,这样才能使用在该函数后面定义的全局变量。此外,extern 还可以在多文件的程序中声明外部变量。

由于变量从不同维度划分,形成了多种错综复杂的关系,在学习编程的时候需要重点关注。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-28
你是想知道转换成二进制的还是十进制的
二进制的为1010 1111 1111 1011 1100
十进制的为720828

可以参考下面的例子的算法:
二进制的1101转化成十进制  
 1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13   转化成十进制要从右到左用二进制的每个数去乘以2的相应次方   不过次方要从0开始
十进制转二进制:   用2辗转相除至结果为1   将余数和最后的1从下向上倒序写 就是结果   例如302   302/2 = 151 余0   151/2 = 75 余1   75/2 = 37 余1   37/2 = 18 余1   18/2 = 9 余0   9/2 = 4 余1   4/2 = 2 余0   2/2 = 1 余0   1/2 = 0 余1   故二进制为100101110
二进制转八进制
在把二进制数转换为八进制表示形式时,对每三位二进制位进行分组,应该从小数点所在位置分别向左向右划分,若整数部分倍数不是3的倍数,可以在最高位前面补若干个0;对小数部分,当其位数不是的倍数时,在最低位后补若干个0.然后从左到右把每组的八进制码依次写出,即得转换结果.
你算一下就知道了啊 比如110=2^2+2+0=6

二进制转十六进制
要将二进制转为16进制,只需将二进制的位数由右向左每四位一个单位分隔,分的不够的前边补零,用四位数的二进制数来代表一个16进制。转换表如下,括号内为十六进制
0000(0) 0001 (1) 0010 (2) 0011 (3) 0100 (4) 0101 (5)
0110 (6) 0111 (7) 1000 (8) 1001 (9) 1010(A) 1011 (B)
1100 (C) 1101 (D) 1110 (E) 1111 (F)
例如:10101011划分为1010 1011,根据转换表十六进制为AB
第2个回答  2012-03-01
720828
不想计算的话,贴到pc机自带的计算器里
选择16进制贴入affbc
换成十进制,就计算出结果来了!!
0xaffbc = c*1+b*16+f*16*16+f*16*16*16+a*16*16*16*16 = 720828
其中a = 10 b = 11 c = 12 d = 13 e = 14 f = 15
相似回答