当前位置:首页 » 编程语言 » 如何减小c语言的程序大小
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

如何减小c语言的程序大小

发布时间: 2022-07-25 00:08:45

1. c语言写程序提高程序效率减小空间的方法都有哪些

算法级别的显然是最主要的优化,一个平方级算法和一个超线性算法的时间复杂度天差地别。但如果已经达到了算法的下界,那么就只能是针对程序进行优化了。其实编译器干的坏事往往比好事多,尤其是在做并行的时候~另外,先检查下是否需要优化,如果不是瓶颈的地方再优化也没有明显效果,常用的优化手段一般是增大并行度,指令级或者线程级的,还有就是针对内存结构的特殊处理等等。具体可以参考计算机系统结构——量化研究方法,第三版我觉得不错,第四版没看。至于用C的话,比较灵活,比如自己消除递归,循环强度削弱,使用宏函数或者内联函数,内嵌汇编等等都可以,视情况而定了。

2. C语言控制台程序如何自定义窗口大小(VC6.0中)比如最大化控制台窗口,想着能多输出点东西哈

调整控制台大小 右键控制台上边框就可以看到设置选项

要多输出东西 建议使用输出到文件

3. 如何将单片机C语言程序改小

如果超出太多就另想办法,例如更换单片机。
如果超出得不多,可以进行优化。这里又分为两种情况:如果你编程经验丰富,可以手动通过优化减小程序代码大小;如果你不太懂得如何手动优化,可尝试提高编译优化等级并优先针对代码大小进行优化,不过提高优化等级往往会带来更多的隐患,不建议这么做。

“对于程序中重复出现的指令,用子程序调用的方式是否能将程序大小改小?”你指的是重复代码段吧,某些优化等级下编译器已经自动进行了这种优化,这时再手动合并重复代码段有时反而会导致代码大小增大……需要具体试验进行。记得多备份。

“是不是说 程序的代码行数越少,这个程序的所占的空间大小会越小?”完全不是这么回事,某些时候一行C程序可能会编译出很长的汇编代码,尤其是那些卖弄C语言技巧的家伙们。我之前看过一个例子是某个家伙写的一行高度紧凑的语句编译出了数百字节。当然如果不幸调用了库函数会使得代码大小迅速膨胀。

4. 无奈,怎能才能降低C语言程序的CPU使用率!!

单线程程序的都是这样的,只用一个核,所以占用50%。
可以用多线程技术解决CPU占用率过高的问题。
以下为本人原创:

#include <stdio.h>
#include <windows.h>
#include <process.h>

int end = 0;
void calc()
{
int i=1;
while(i++);
end = 1;
}//长时间计算子程序

void MyThread(void*)
{
calc();
_endthread();//结束线程
}//线程主体

int main()
{
int n;
HANDLE hThread = (HANDLE)_beginthread(MyThread, 0, NULL);//创建另一线程
for(n=0;!end;++n)
{
//idle time = 80%, busy time = 20%
if(n==10) n=0;
if(n==0) SuspendThread(hThread);//挂起线程
if(n==8) ResumeThread(hThread);//恢复线程
Sleep(100);
}
printf("OK!\n");
return 0;
}//主线程

5. 小弟是C语言新手,有个问题,就是当程序运行时窗口的大小怎么调整

在弹出的命令行窗口标题栏上右击,选属性,选布局选项卡,调整窗口大小的数值,点确定。
如果有提示在哪些窗口使用这些设置,就选所有窗口

6. c语言怎么减少programspace

减少办法:使用#pragmapack(1)字节对齐结构;在结构可以包含不同类型的数据的地方使用联合;使用位字段而不是整数来存储标志和小整数;避免使用固定长度的字符数组来存储字符串,实现字符串池和使用指针。

programspace:程序空间,内存是计算机系统中一个主要部件,用于保存进程运行时的程序和数据,也称可执行存储器。在计算机中,内存空间一般是指主存储器空间(物理地址空间)或系统为一个用户程序分配内存空间。扩展内存空间的方法一般有增加内存大小和虚拟内存。
空间是与时间相对的一种物质客观存在形式,但两者密不可分,按照宇宙大爆炸理论,宇宙从奇点爆炸之后,宇宙的状态由初始的“一”分裂开来,从而有了不同的存在形式、运动状态等差异,物与物的位置差异度量称之为“空间”,位置的变化则由“时间”度量。空间由长度、宽度、高度、大小表现出来。通常指四方(方向)上下。

7. C语言编译,如何减少内存

用时再申请内存,用完了就放掉,要考虑到变量的生命周期,在合适的位置声明变量

8. 如何用C语言编写一个简单的压缩程序

觉得难度够大了,谈谈我的方法吧:比如字符串"aabbccddeeffgg123456789"可以看到里面有字母重复,并且有规律,是否可以表示成2a to 2g 1 to 9?因该可以的,数据压缩的原理也都是把冗余的数据简化表示从而减少数据的大小,解压时就是反向过程,但是怎么完整表示这些被压缩的数据就是个要研究的问题。

9. 51单片机C语言程序大小

52单片机也只有8K的ROM.14K的程序太大了,只有加外部ROM了。不是因为C语言的程序太大了,如果是破解了KEIL编译器之后,可以编译无穷大的软件,没有破解只能编译2K,

10. keil怎么调节C语言程序的字体大小呀

(主菜单)“编辑”----“配置”----“颜色和字体”标签页,在“窗口”中选择你要编辑字体的那个窗口,“元素”中有很多可以让你选择的,如test就是你的编写的程序文本,再在右边的“字体”中选择你要的字体和大小,选择Fixedsys字体的10号字,字体比较不错,而大小也差不多。不过每一个人可能感觉不一样,选择你自己喜欢的吧。