putchar
gets
fgets
puts
cin與cout
getline
cin.getline
不接受空格,回車結束輸入
接受空格,回車結束輸入,換行符會儲存在緩衝區
getchar()函式等待輸入直到按回車才結束,回車前的所有輸入字元都會逐個顯示在螢幕上,但只有第乙個字元作為函式的返回值。
函式原型:int getchar(void);
功能:從標準輸入裡讀取下乙個字元,相當於getc(stdin)。
返回值:返回型別為int型,為使用者輸入的ascii碼,出錯返回-1。
接受空白字元、換行符
函式原型: int putchar(int ch);
getchar與putchar的使用
#includeint main()
接受空格,回車鍵結束輸入
函式原型:char *gets(char *string);
ps:(1)因為gets不限制輸入字元個數,因此容易造成程式崩潰,可使用fgets代替;(2)在gcc中使用gets(),編譯無法通過;
函式的功能:從fp所指檔案中讀入n-1個字元放入str為起始位址的空間內;如果在未讀滿n-1個字元之時,已讀到乙個換行符或乙個eof(檔案結束標誌),則結束本次讀操作,讀入的字串中最後包含讀到的換行符。
呼叫fgets函式時,最多只能讀入n-1個字元。讀入結束後,系統將自動在最後加』\0』,並以str作為函式值返回。
函式原型:char *fgets(char *buf, int bufsize, file *stream);
*buf: 字元型指標,指向將儲存到的資料位址。
bufsize: 整型資料,指明buf指向的字元陣列的大小。
*stream: 檔案結構體指標,將要讀取的檔案流。
fgets讀取指定大小的資料,避免gets函式從stdin接收字串而不檢查它所複製的快取的容積導致的快取溢位問題
輸出空格與換行符,遇到』\0』停止輸出
#include #include //getch()的標頭檔案
int main(void)
str[10]='\0';
//若去掉上面一行**,則會輸出亂碼
//puts輸出字串時要遇到'\0』也就是字元結束符才停止
puts(str);
getch();
return 0;
}
cin:輸入字串陣列時,遇到空白字元結束輸入(不能讀入空格)。
cout:在輸出字串陣列時,與puts()和printf+%s相同,遇到『\0』停止輸出。
cin.getline()函式用於處理陣列字串
函式原型:cin.getline(char * , int);第乙個引數為乙個char指標,第二個引數為陣列字串長度。
字元 字串的輸入輸出
字元與字串的輸入輸出 如果要使用現成的字串函式和方法,就一定要加上對應的標頭檔案,如果在c 當中呢,就是 include 如果是在c當中呢,就是 include 4.1字元,字串的輸入輸出 char c 字元的輸入輸出 scanf c c printf c c 接收單個字元 字串的輸入輸出 char...
字元 字串的輸入 輸出
提前宣告 c字串為char或char 型別,include 而c 字串為string型別。include 定義c字串時,有如下問題 char str hello world 必須初始化 char str 3 想要不初始化,必須指定長度 char str 沒有分配記憶體,且無法用字串常量初始化,否則報...
字串的輸入輸出
1.字串陣列 初始化 char s1 array 字元陣列 char s2 6 array 陣列長度 字串長度 1,因為字串末尾會自動添 0 printf s,c n s1,s2 2 2.字串指標 初始化 char sp pointer 字元指標 printf s,c,c n sp,sp,sp 2 ...