内存节省机制C演示
编写代码实质是通过指令对计算机内存进行操作,计算机的硬件设备往往十分有限,尤其是内存。如何使有限的存储空间利用效率达到最大,成为了代码优化首先要考虑的事情。
比如,输入三个数比较大小并输出最小值。下面写段代码:
使用条件语句嵌套比较
- #define _CRT_SECURE_NO_WARNINGS
- #include<stdio.h>
- void main()
- {
- int a;
- int b;
- int c;
- int min;
- scanf("%d%d%d", &a, &b, &c);
- if (a > b)
- {
- if (b > c)
- {
- min = c;
- }
- else
- {
- min = b;
- }
- }
- else
- {
- min = a;
- }
- printf("%d",min);
- }
使用三目运算符
- #define _CRT_SECURE_NO_WARNINGS
- #include<stdio.h>
- int minSize();
- void main()
- {
- int a = minSize();
- printf("%d",a);
- }
- int minSize()
- {
- int a;
- int b;
- int c;
- scanf("%d%d%d", &a, &b, &c);
- return a < b ? (a < c ? a : c) : (b < c ? b : c);
- }
比较两种代码风格,使用循环结构比较大小是一种较为基础的方法,在栈区开辟了一个名为min的int空间用于暂存中途比较结果,这样就比第二种使用三目比较,多消耗了内存。