Posted on 2010-11-22 21:11
Kevin_Zhang 閱讀(272)
評論(0) 編輯 收藏 引用 所屬分類:
C/C++
c語言中字符串的輸入一般有 scanf(),getch(),getchar(),gets(),getline()。這些函數(shù)都是實現(xiàn)從鍵盤輸入的標準輸入方式。但是卻有一些區(qū)別:
gets()函數(shù)用來從標準輸入設備(鍵盤)讀取字符串直到回車結(jié)束, 但回車符不屬于這個字符串,其中字符串中可以有空字符。例如:
char s[50];
gets(s);
scanf("%s", &s)與 gets(s)函數(shù)相似, 但不完全相同, 使用scanf("%s", &s)函數(shù)輸入字符串時存在一個問題, 就是如果輸入了空格會認為輸入字符串結(jié)束,空格后的字符將作為下一個輸入項處理, 但gets() 函數(shù)將接收輸入的整個字符串直到回車為止。
getch()函數(shù)是從標準輸入設備中讀取一個字符,但這個字符不會在終端中顯示出來。
getchar()函數(shù)也是從標準輸入設備中讀取一個字符,但這個字符在終端中顯示出來。
getline()函數(shù)是讀取一行的字符串。