楊微微
摘要:隨著計算機技術(shù)的快速發(fā)展,C 語言的編程功能逐漸增多,表達能力也很強,使用起來靈活方便,應(yīng)用廣泛。計算機C語言不同于一般我們所提及到的語言,需要人們掌握C語言基本的語法知識、使用方法,以便可以編輯相應(yīng)的代碼,實現(xiàn)需要的某種軟件功能。以下本篇分析關(guān)于計算機C語言程序的編輯情況,并提出優(yōu)化的程序編輯策略。
關(guān)鍵詞:編輯;C語言;計算機;程序
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)10-0106-03
在實際應(yīng)用中,計算機C 語言不僅具備高級語言的所有優(yōu)秀特點,還具有間接性能好的特點, C語言可以是系統(tǒng)性描述語言,也可是程序設(shè)計中的通用語言,是計算機人才應(yīng)該掌握的一種編程設(shè)計語言。以下對此做具體分析。
1 編輯運行計算機C語言程序過程
把編輯好的計算機C語言程序代碼輸入,交給計算機,編譯成目標程序文件.obj,鏈接生產(chǎn)可執(zhí)行程序文件.exe,運行C語言程序文件生成程序【1】。在計算機C語言應(yīng)用過程中,計算機C語言程序編輯工作是最繁雜的,必須細致地由人工在計算機上來完成,避免出錯,才可確保C語言程序良好運行。
2 分析計算機C語言程序編輯常見錯誤
2.1 常見變量編輯錯誤
1)忘記定義變量。
例如:
void main()
{
x=3;
y=5;
printf( “%d\n” ,x+y ) ;
}
在計算機C語言應(yīng)用中,在對程序編輯中,需要對程序中每一個用到變量都進行定義,然而在上面的程序編輯中,并沒有對x與y便利進行定義【2】。故此正確的程序編輯中,應(yīng)該在函數(shù)體開頭中加:int x,y;才可確保程序編輯完整性。
2)進行計算機C語言編輯中,C語言數(shù)據(jù)格式是不一致的。
例如,把A定義為整數(shù),B定義成實型,在編輯C語言程序中:
A=3;
B=4.5; / * 表示對程序中的A和B進行賦值操作*/
printf( “%f %d\n ”, A, B);
在進行計算機C語言編譯時,輸出結(jié)果為0.00000016402,故此需要把4.5轉(zhuǎn)換成4【3】。
3)對于計算機C語言輸出的語句scanf之中,沒有使用變量的地址符“&”,也是常見的程序編輯錯誤。例如:
scanf( “%d%d”,a,b );
應(yīng)寫為scanf( “%d%d”,&a,&b );
2.2 C語言數(shù)組編輯錯誤
1)C語言的程序編輯之中,在引用數(shù)組元素時,用圓括號。例如:
void main( )
{ int i, a[10];
for( i=0 ;i<10; i++)
scanf ( “%d” , &a(i) );
}
2)定義和引用二維、多維數(shù)組方法不對。例如:
Void main( )
{int a[5 ,4 ];
……
}
正確的是,應(yīng)將其改成 a[5][4] 。
3)認為數(shù)組名可以代表數(shù)組的全部元素。如:
void main( )
{int a[4]={ 1,3,5,7 };
Printf (“%d %d % d %d\n”,a);
}
在進行C語言編輯中,數(shù)組名可以代表數(shù)組的首地址,數(shù)組名不可以輸出4位的整數(shù)。
2.3應(yīng)用C語言指針編輯中的錯誤
1)混淆了C語言的字符數(shù)組和指針。如:
void main( )
{
char str[4] ;
str = ”Compute and c ”;
printf( “%s\n ”,str ) ;
}
對于進行C語言程序編譯,出錯。要知道,在C語言中str是數(shù)組名,其代表的是數(shù)組首地址。在C語言程序運行期間,str不能被賦值【4】。故此,需要將其改成“ char *str;”為字符指定指針,則可正確運行該程序。
2)對于引用C語言的指針變量中,沒有賦值。如:
Viod main( )
{ char *p ;
Scanf ( “%s”,p) ;
}
對于計算機C語言程序編輯中,在不為指針變量p賦值時,是不能去直接用指針的;若是直接就去引用這個指針變量,那么在編譯C語言之時,就給出一些錯誤的警告信息。需要將其改為:
char *p,c [20] ;
p= c ;
scanf( “%s”,p ) ;
這樣運行后,C語言程序才正確。
3 優(yōu)化提升計算機C語言程序編輯策略
3.1 善用Turbo C 2.0編譯錯誤信息
在編輯計算機C語言程序中,Turbo C 2.0編譯錯誤信息【5】,應(yīng)該善于運用C語言進行程序編輯,可以提升C語言程序編輯質(zhì)量。如下所示:
1)在C語言程序編輯文件中,定義太多全局數(shù)據(jù),就會提示“Too much global define in file”對此,進行編輯處理中,證實是由于C語言的全程數(shù)據(jù)聲明總數(shù)超過64K,可以減少數(shù)組定義。
2)C語言程序編輯中,出現(xiàn)調(diào)用‘xxxx' 函數(shù)無原型的情況,會提示“Call to function 'xxx' with proto type ()”可以增加函數(shù)的原型,就可以解決該錯誤。
3)編輯C語言程序中,出現(xiàn)參數(shù)"#"類型不匹配錯誤,提示“Type mismatch in parameter #” ,在處理中可以定#參數(shù)轉(zhuǎn)換其參數(shù)類型。
C語言程序分析與處理:當編譯C語言程序,找不到源文件時就會出現(xiàn)此類錯誤【6】。檢查文件名是否拼錯或檢查對應(yīng)的軟盤或目錄中是否有此文件。
在進行計算機C語言編輯中,基于Turbo C 2.0編譯錯誤信息,善于對其進行分析處理,將會極大提升計算機C語言程序編輯效率,發(fā)揮積極影響。然而,有時編輯的C語言程序本身不存在語法錯誤,也能夠順利運行,但是運行結(jié)果顯然是錯誤的。C語言開發(fā)環(huán)境所提供的編譯系統(tǒng)無法發(fā)現(xiàn)這種程序邏輯錯誤,只能靠自己的上機經(jīng)驗分析判斷錯誤所在。
3.2 靈活掌握計算機C語言編輯菜單命令與快捷鍵功能
1)計算機C語言的主菜單中,其項目和功能表項目功能如下表所示:
2)常用的C語言程序的編輯命令
光標移動快捷鍵:
← 左移一格編輯光標
↑ 上移一行光標
Home C語言光標移至行頭
Pgup 表示C語言光標移至上頁
C語言程序編輯中的插入、刪除快捷鍵:
Insert 可打開/關(guān)閉C語言編輯中的插入功能
Ctrl+Y 可刪除一行
C語言編輯中塊命令的快捷鍵:
Ctrl+KB 可以去標記塊頭
Ctrl+KK 標記塊尾
Ctrl+KC 可復制C語言塊
Ctrl+KY 刪除塊
其他的C語言快捷鍵操作:
Ctrl+QF 編輯查找
Ctrl+QA 可查找C語言并替換編輯
Ctrl+U 能夠撤銷正在進行的操作
3.3 熟練掌握C語言基本的程序編輯能力
在編輯計算機C語言程序中,需要能夠有效的去掌握C語言中的相關(guān)數(shù)據(jù)類型,以便在編輯C語言程序中有效的定義變量,確定其是整型、字符型還是實型,并為其賦值;了解C語言成績數(shù)據(jù)輸出時所用的格式轉(zhuǎn)換符。同時,也可以學會使用計算機C語言中的有關(guān)算術(shù)運算符,數(shù)量掌握運算符表達式的編輯方法,避免在實際中對自加(++)運算符、自減(--)運算符的使用。同時,也可以進一步地去熟悉計算機C程序的編輯運行過程,這樣可以提升其在實際工作中運用計算機C語言進行程序編輯的效率。
3.4 以空間換時間編輯C語言程序
計算機C語言程序中,為了可以解決其程序編輯中的空間、時間矛盾,可以基于逆向思維角度,去考慮在實際應(yīng)用中對計算機C語言程序的編輯問題。能夠應(yīng)用空間轉(zhuǎn)化時間的方式,解決程序處理進程,提升C語言應(yīng)用效率。就比如在對程序中的字符串進行賦值:
方法A:常用方法
#define LEN 32
char stringA [LEN];
memset (stringA,0,LEN);
strcpy (stringA,"這是一個數(shù)據(jù)");
方法B:指針
const char string2[LEN] ="這是一個數(shù)據(jù)";
char * cp;
cp = stringB ;
應(yīng)用指針來進行數(shù)據(jù)賦值,這樣可以在使用的時候,直接利用指針來進行操作,提高C語言程序執(zhí)行的效率。
運用計算機c語言程序編程過程中,不能停留在學習c語言語法規(guī)則的層次,而是利用學到的知識編寫c語言程序,解決實際問題。c語言靈活、簡潔,更需要通過編程的實踐來真正掌握它。在運用計算機c 語言編程中,向順序表插入元素的時候需要移動大量的數(shù)據(jù),經(jīng)鏈表采用動態(tài)存儲分配,可以根據(jù)需要申請內(nèi)存單元,簡化程序編程。如下為部分實現(xiàn)代碼:
ChainListType * ChainListAddEnd(ChainListType * head,DATA data){
//head 為鏈表的頭指針,data為節(jié)點保存的數(shù)據(jù)
ChainListType *node, *h;
//因為需要動態(tài)分配內(nèi)存 所以需要引入 stdlib.h 頭文件
if (?。╪ode = (ChainListType *)malloc(sizeof(ChainListType)))){
printf("為保存的節(jié)點數(shù)據(jù)申請內(nèi)存失敗");
return NULL;
}
3.5 使用位操作
計算機C語言程序編輯中,實現(xiàn)高效的計算機C語言編寫,可以減少編輯程序中除法、和取模運算??捎糜嬎銠CC語言"位運算",控制程序硬件,提高C語言程序的運行效率。如下所示:
方法一:
int I,J;
I = 257 /8;
J = 456 % 32;
方法二:
int I,J;
I = 257 >>3;
J = 456 - (456 >> 4 << 4);
方法一中,調(diào)用取模函數(shù)以及除法函數(shù);而方法二,代碼更簡潔,效率更高,提升計算機C語言編輯質(zhì)量。
4 結(jié)論
綜上所述,對計算機C語言編輯進行相關(guān)分析,以求可以提升人們在使用C語言程序編輯中的相關(guān)技能,可以更好地發(fā)揮C語言應(yīng)用作用,減輕計算機C語言程序編輯工作人員的工作壓力,提升計算機C語言應(yīng)用效率。
參考文獻:
[1] 叢書勤. 淺析計算機C語言編輯程序技巧[J]. 電子世界, 2014(22).
[2] 王曉明. 計算機C語言編輯程序探討[J]. 長春教育學院學報, 2014(5).
[3] 付欣. 關(guān)于計算機C語言編輯程序技巧探究[J]. 中國外資:上半月, 2013(12).
[4] 任國英. 計算機C語言編輯程序技巧探討[J]. 赤峰學院學報: 自然科學版, 2012(1).
[5] 耿際華. 計算機C語言編輯程序技巧探討[J]. 硅谷, 2012(16).
[6] 陳德存. 基于C語言數(shù)控機床智能后置處理程序的制作[J]. 制造技術(shù)與機床, 2013(10).