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號字,字體比較不錯,而大小也差不多。不過每一個人可能感覺不一樣,選擇你自己喜歡的吧。