在编写程序的时候,定义变量是必不可少的,这时就要用到一些基本数据类型。
也许你会说,定义一个变量有什么困难的,这是很容易办到的。要定义整型变量,直接用“int i;”语句就可以了;要定义字符型变量,直接用“char c;”就可以了。确实,这是学校教育教给我们的,但在实际工作中却不能这样做。
为什么呢?原因很简单,因为这样写出来的程序,看起来很“山寨”,不是专业的程序员应该做的事情。
前段时间,我在看《楚汉传奇》,有一个场面给我留下了非常深刻的印象。当刘邦第一次去找项羽帮忙的时候,他们一行人看到了项羽军营是如何练兵的,想到自己练兵的方法,当时就震惊了。刘邦他们完全就像是一群没有规范、到处乱跑的农民,与项家军比起来,真是差得太远了。这种差别移植到软件开发上来,就是“山寨”与“专业”的差别。这个比喻虽然有点不恰当,当也说明了一定的道理。
书本上学的基本数据类型就像是不懂事的小孩,只有对之进行一定的规范和训练,才能走出社会,才能为单位所用。
根据自己的工作经验,常用到的一些基本数据类型的重定义(规范化)如下:
(1)整型
整型,以占数据位数来分包括了短整型(short int)、整型(int)和长整型(long int),以有无符号来分包括了无符号整型(unsigned)和有符号整型(signed)。
对于无符号短整型,其重定义为:typedef unsigned short intUINT16;
对于有符号短整型,其重定义为:typedef signed short intINT16;
对于无符号整型,其重定义为:typedef unsigned intUINT32;
对于有符号整型,其重定义为:typedef signed intINT32;
对于无符号长整型,其重定义为:typedef unsigned longULONG;
对于有符号长整型,其重定义为:typedef signed longLONG;
通过以上重定义之后,我们就可以用UINT16、INT16、UINT32、INT32、ULONG和LONG来代替相应的整型类型了。这里拿UINT32来说明:“U”代表“unsigned”,“INT”代表“int”,“32”表示“32位”,从这个定义一眼就可以看出这表示32位的无符号整型数据类型,如果要定义一个这样的一个变量i,用“UINT32 i;”语句就可以了。
更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/project/