Ⅰ c語言能做什麼項目
C語言是普適性最強的一種計算機程序編輯語言,它不僅可以發揮出高級編程語言的功用,還具有匯編語言的優點,因此相對於其它編程語言,它具有自己獨特的特點。具體體現在以下三個方面:
其一,廣泛性。C 語言的運算范圍的大小直接決定了其優劣性。C 語言中包含了34種運算符,因此運算范圍要超出許多其它語言,此外其運算結果的表達形式也十分豐富。此外,C 語言包含了字元型、指針型等多種數據結構形式,因此,更為龐大的數據結構運算它也可以應付。[3]
其二,簡潔性。9 類控制語句和32個KEYWORDS是C語言所具有的基礎特性,使得其在計算機應用程序編寫中具有廣泛的適用性,不僅可以適用廣大編程人員的操作,提高其工作效率,同 時還能夠支持高級編程,避免了語言切換的繁瑣。[3]
其三,結構完善。C語言是一種結構化語言,它可以通過組建模塊單位的形式實現模塊化的應用程序,在系統描述方面具有顯著優勢,同時這一特性也使得它能夠適應多種不同的編程要求,且執行效率高。
Ⅱ 求一份C語言小項目的代碼,要求150行以上,很急!
我給個我寫的吧,不過不完全符合要求。子函數只有7個,但有兩個宏,其中一個可以換成函數。其實如果把測試改成自動的,可以超過10個,你可以自己改一改。
項目名稱:UTF8StringEscaper。在Github上可以搜到,不過其實只是個單文件的小程序。代碼參考了leptjson。
項目概述:此程序可以將輸入的UTF8文本進行轉義,例如如果手動輸入 1 2 這四個字元,可以輸出 1(換行)2。
採用的C語言技術,這怎麼好寫呢?:注釋、轉義序列、預處理器、指針、inline
/*測試用例:
hello,world
u4F60u597D u4E16u754C
uD869uDEA5
你好//win下失敗
uqweru1234
u0068uqwer
auDFFFa
auD800a
ym
uD800u0068
uD800uqwer
*/
#include<assert.h>
#include<stdbool.h>
#include<stdio.h>
#include<stdlib.h>
#ifdefined__clang__&&!(definedWIN32||definedlinux||definenix)
#defineWIN32
#endif
#definemovenext(ch,p)(ch=*p++)
voidParse(constchar*p);
intParseUnicode(constchar**pp);
intParseHex(constchar*num);
(unsignedshorthigh,unsignedshortlow);
voidEncodeUTF8(unsignedcodePoint);
intmain(void)
{
#ifdefWIN32
system("chcp65001");
#endif
charinput[BUFSIZ];
printf(" ¥>");
while(gets(input)!=NULL)//讀到EOF時返回NULL
{
Parse(input);
printf(" ¥>");
}
return0;
}
#defineHandleEscape(ch,escaped)
casech:
putchar(escaped);
break
voidParse(constchar*p)
{
charch;
while(movenext(ch,p)!='