Linux C - C基礎(chǔ)篇二(基本的輸入輸出)
學(xué)習(xí)Linux c最好用的工具就是man工具了,可以查看c庫函數(shù)的原型、參數(shù)、返回值等詳細(xì)信息。
1. putchar()函數(shù)函數(shù)原型:int putchar(int c)
功能:向終端輸出一個(gè)字符
參數(shù)c:整型(即字符的ascii) / 字符 / 整型表達(dá)式
返回值:輸出的字符的ascii碼值
函數(shù)原型:int getchar();
功能:從終端輸入一個(gè)字符
參數(shù):無
返回值:返回的是輸入的字符的ascii碼值
int printf(const char *format, ...);
功能:按指定格式向顯示器輸出數(shù)據(jù)
格式字符:%[+/-][m.n]d
m表示打印數(shù)據(jù)的列寬,如果m小于數(shù)據(jù)位寬,數(shù)據(jù)按實(shí)際輸出,如果m大于數(shù)據(jù)位寬,在數(shù)據(jù)左邊補(bǔ)空格。n代表小數(shù)的位數(shù)。+代表打印一個(gè)+號。- 代表左對齊,空格補(bǔ)在右邊。
打印格式:
4. scanf()函數(shù)int scanf(const char * format, ...)
功能:從終端讀取任意類型的數(shù)據(jù)
參數(shù):format 格式控制字符串,%d %s %c....; ...地址符列表
返回值:成功讀取數(shù)據(jù)的個(gè)數(shù),出錯(cuò)返回EOF
回收垃圾字符:
scanf("%c%c%c", &a, &b, &c) ,當(dāng)在終端輸入a b c時(shí),得到的是a=a, b= , c = b;作為分隔符的空格或者回車在這里其實(shí)是垃圾字符。
方法1: 加空格scanf("%c %c %c", &a, &b, &c) 可以匹配吃掉任意數(shù)量的空格,tab,回車鍵。
方法2: 加%*c scanf("%c%*c%c%*c%c", &a, &b, &c) 可以匹配吃掉一個(gè)空格、tab、回車鍵。
方法3: 在scanf("%c", &a)后面加上getchar函數(shù)可以回收垃圾字符。
5. gets()從終端讀取一個(gè)字符串char *gets(char *s);
功能:從終端讀取一個(gè)字符串
參數(shù)s: 緩存區(qū)的首地址.,用來保存讀到的字符串的空間
返回值:成功返回緩沖區(qū)的首地址;失敗,返回NULL
int buf[10] = {};
gets(buf);
注意:一般不建議使用gets,因?yàn)椴粰z查目的地址的空間大小,容易發(fā)生越界。
6. puts() 向終端輸出一個(gè)字符串char puts(const char *s);
功能:向終端輸出一個(gè)字符串. 默認(rèn)加換行符
參數(shù):要輸出的字符串的首地址
返回值:成功返回非負(fù)數(shù),出錯(cuò)返回-1
用法:puts("hello world");
以上是老韓關(guān)于Linux c基礎(chǔ)的總結(jié),如有不足歡迎指點(diǎn);對Linux c或者Linux驅(qū)動感興趣的朋友可以收藏關(guān)注,我會持續(xù)更新的,謝謝支持!
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。