本文目錄一覽:
c語言字符長度函數
正確的答案是5,題目選項有誤。
首先strlen()函數返回的長度是不包含’\0’,
第一個字符為:a
第二個字符為:b
第三個字符為:\n (換行符)
第四個字符為:2
第五個字符為:\ (\\轉義為\)
所以答案為5。
(下圖為實際代碼演示)
擴展內容:
strlen()函數(C語言函數):
strlen所作的僅僅是一個計數器的工作,它從內存的某個位置(可以是字符串開頭,中間某個位置,甚至是某個不確定的內存區域)開始掃描,直到碰到第一個字符串結束符’\0’為止,然後返回計數器值(長度不包含’\0′)。
參考資料:strlen函數 – 百科
如何在c語言中計算字符串長度
C語言計算字符串長度,可以手動計算也可以使用庫函數或者sizeof()操作符。
方法:
自定義函數求長度
使用strlen()函數
使用sizeof()操作符
自定義函數:
int cont_str(char *s)
{
int i = 0;
while ( str[i++] != ‘\0’) ;
return i;
}
使用string頭文件中的strlen()函數:
strlen(str); //假設str為待求的字符串數組名
使用sizeof()操作符:
sizeof(str)/sizeof(str[0]); //假設str為待求的字符串數組名
注意:
strlen()函數求出的字符串長度為有效長度,既不包含字符串末尾結束符 ‘\0’;
sizeof()操作符求出的長度包含字符串末尾的結束符 ‘\0’;
當在函數內部使用sizeof()求解由函數的形參傳入的字符數組的長度時,得到的結果為指針的長度,既對應變量的字節數,而不是字符串的長度,此處一定要小心。
c語言字符串處理函數有哪些
1、puts函數——輸出字符串的函數
一般的形式為puts(字符串組)
作用:將一個字符串輸出到終端。如,char一個string,並賦予初值。調用puts(string);進行字符串的輸出。
2、gets函數——輸入字符串的函數
一般的形式:gets(字符數組)
作用:從終端輸入一個字符串到字符數組,並且得到一個函數值成為字符數組的起始地址。
gets(str);
鍵盤輸入,,,,你懂得。
注意:puts和gets函數只能輸出或者輸入一個字符串。
3、strcat函數——字符串連接函數
一般的形式:strcat(字符數組1,字符數組2);
作用:把兩個字符串數組中字符串連接起來,把字符串2連接到字符串1的後面。
說明:字符數組1必須足夠大,以便容納連接後的新字符串。
4、strcpy/strncpy函數——字符串複製函數
一般形式:strcpy(字符數組1,字符串2);
作用:將字符串2複製到字符數組1中去。
如:char str1[10],str2[]=”DongTeng”;
strcpy(str1,str2);
執行後的結果為:你懂得
注意:
1. 不能用賦值語句直接將一個字符串常量或者字符數組直接給一個字符數組。
2. 用strncpy可以賦值指定的位置的字符。strncpy(str1,str2,3);將str2中的第3個字符複製到str1中。
5、strcmp函數——字符串比較函數
一般形式:strcmp(字符串1,字符串2);
作用:用來比較兩個字符串的差異。具有不同的比較規則。
6、strlen函數——測字符串長度的函數
一般形式:strlen(字符數組);
如:char str[10]=”DongTeng”;
printf(“%d”,strlen(str));
得到的結果是:5
7、strlwr函數——轉換為小寫的函數
一般形式:strlwr(字符串);
8、strupr函數——轉換為大寫的函數
一般形式:strupr(字符串)。
c語言,用函數計算字符串長度
getchar()函數的原型是 int getchar( void )
返回值是整型的
功能是:從標準輸入中讀取一個字符,也就是鍵盤敲擊字符,只接收單個字符
可以用gets()函數來接收多個字符
這裡的 s 接收的是該字符的ASCII碼,非長度。
如果從原基礎上改可以這樣
int i;
char s[20]; /*字符串需要長度*/
gets( s );
i = num( s );
int num( char *s ) /* 這裡的指針 ,後面學得到*/
{
}
套上去就可以了
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/160698.html