为何int类型比char类型高效

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fengfeng0328/article/details/83444023

在编写程序时,32位系统中定义变量最好用int,这样效率高。

因为32位系统中很多硬件本身都是32位的,配合定义的int型变量在内存中恰好分配4个字节,使得软件和硬件对于数据的处理非常契合,这样的工作效率自然就高。32位的硬件配置天生就适合定义32位的int型变量。千万不要单纯地认为定义char型变量由于分配了更小的内存空间,所以效率就更高,因此我们一直强调编写程序时要尽量配合硬件特点。

很多32位系统环境下,当定义bool类型变量时,我们基本都是使用int代替。虽然bool型只需要一个位,但是我们定义一个整型代替时,看似浪费了31bit,但是好处是效率会高很多。对于现代计算机或者嵌入式系统来说,内存还是很充足的,浪费31个bit并不是一个很大的问题。所以现在写程序大部分都是以效率为重。

内存的对齐访问不是逻辑问题,而是硬件问题。

猜你喜欢

转载自blog.csdn.net/fengfeng0328/article/details/83444023
今日推荐