char 為字元陣列
當存入相應的字元時,會分解成乙個個的字元存進陣列
char a[5]
=;//當想存hello的時候在字元陣列裡會拆成乙個個的字元生成,5為陣列長度
當如果你想存字串時,可用char*
char *為字串陣列
char
* a[3]
=;/*當加上星號後,陣列裡存的不是hello,the和same,而是這三個字串
的第乙個字元的位址,而這個字串又是由字元陣列組成的。因為在位址裡
是連續的,所以能讀取整個hello,the,same,所以可以變相就變成了字
符串陣列
*/
scanf輸入字元用的是%c,%s,
當使用%s時
char str[10]
;scanf
("%s"
,str)
;printf
("%s"
,str)
;
輸入`
qaq qaq qaq
顯示
qaq
識別空格作為字串的結尾
討論gets_s和scanf和getchar的區別
#define _crt_secure_no_warnings
#include
intmain()
輸入asdf再輸入as df 得到結果
結論:
scanf識別空格或者enter或者tab作為字串的結尾,並且空格仍然在輸入緩衝區裡
getchar()可以接受單個字元它收到了scanf的空格\n,所以它換行了
gets_s可以接受空格,tab它識別enter(\n)作為結束標誌。
scanf
(screen,
"%d"
,&n)
;print
(screen,
"%d"
,n);
scanf本質是從螢幕輸入拿到數後將其轉變為%d的格式給n
print本質是從從n中拿到數將其轉變為%d的格式傳送給螢幕
sscanf
(str,
"%d"
,&n)
;sprint
(str,
"%d"
,n);
sprintf可以將螢幕變成字元陣列或者字串陣列,相當於把數輸進了字串陣列中。
scanf同理將字串的陣列的數給匯出。
C 字串小知識
c 知識點很碎,下面介紹幾個 字串常見函式的使用 1.把字串中所有的大寫都變成小寫 2.把字串中所有的小寫都變成大寫 3.去掉字串兩端的空格 4.返回乙個字串 substring 開始位置,子串長度 其指定從原字串的第幾個字元開始返回子串,字串包含幾個字元。如 s1 s.substring 1,2 ...
C 字串操作 效能優化細節
c 效能優化細節 1 使用string.empty給乙個空字串變數賦初始值 2 使用str.length 0做空串比較 3 避免不必要的字串toupper tolower類操作 4 巧用stringbuilder進行字串拼接操作 5 建立stringbuilder應指定初始大小 6 避免濫用stri...
c 字串新增字元 C 字串
在 c 語言中,字串實際上是使用null字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。char greeting 6 依據陣列...