数据和C

来源:互联网 发布:mac汉字字体下载 编辑:程序博客网 时间:2024/05/16 18:58

C允许您使用3种数制书写数字,也允许以这3种数制显示数字。要用八进制而不是十进制显示整数,请用%0代替%d。要显示十六进制整数,请使用%x。如果想显示C语言前缀,可以使用说明符%#o、%#x和%#X分别生成0,0x和0X前缀。在IDE中写的代码中插入一个getchar();语句,以便程序的执行窗口不会立即关闭。 对应于16位单位,short类型和int类型的最小取值范围为-32767到32767;对应于32位单位,long类型的最小取值范围为-2147483647到2147483647。对于unsigned short类型和unsigned int类型,最小取值范围为0到65535;对于unsigned long类型,最小取值范围为0到4294967295。long long类型是为了支持对64位的需求,最小取值范围是数据可观的-9223372036854775807到9223372036854775807;unsigned long long类型的最小取值范围为0到18446744073709551615。 在诸多整数类型中选择哪一种呢?首先考虑unsigned类型。当你使用int类型不能表示一个数而使用long类型可以做到时,使用long类型。但是,在long类型大于int类型的系统中,使用long类型会减慢计算,所以没有必要时不要使用long类型。如果在long类型等于int类型的系统中编写代码,当确实需要32位整数时,应使用long类型(而不是int类型),以便使程序被移植到16位机器上后仍然可以正常工作。与此类似,如果需要64位整数,应使用long long类型。 有时你会希望编译器用long类型来存储一个较小的整数。如果希望把一个较小的常量作为long类型对待,可以使用l(小写的L)或L后缀。使用L后缀是更好的选择,因为l同数字1很相近。这样,在int类型为16位、long类型为32位的系统中,会把整数7作为16位数存储,而把整数7l作为32位数存储。l和L后缀对八进制和十六进制数同样使用,比如020L和0x10L。在支持longlong类型的系统中,可以使用ll或LL后缀标识long long类型值,比如3LL。u或U后缀用于标识unsigned long long类型,比如5ull、10LLU、6LLU和9Ull. float类型的只能保证前6位是精确的。

原创粉丝点击