1樓:司馬刀劍
string str="welcome to chaina!";
int m1=str.size();//求字串長度或者下面的
int m2=str.length(); //同上面size功能一樣,都是求字串長度的
2樓:賈林龐喬
sizeof()得到的是資料型別的長度,比如int、char、double型別的sizeof()得到的結果分別是4、1、8.要求字串長度可以用類函式size,即你程式裡的string型別的變數為i,則用i.size()來求i的長度。
3樓:秋梵白萱
#include// 引入字串庫函式
string str; 定義字串str
int len; 定義長度為len
len=str.length; 獲取長度,賦值於len
cout< 4樓: 在標頭檔案裡的strlen和strnlen,如果是stl的字串的話⋯⋯兩說了就 5樓:du瓶邪 函式名: stpcpy 功 能: 拷貝一個字串到另一個 用 法: char *stpcpy(char *destin, char *source); 程式例: #include #include int main(void) 函式名: strcat 功 能: 字串拼接函式 用 法: char *strcat(char *destin, char *source); 程式例: #include #include int main(void) 函式名: strchr 功 能: 在一個串中查詢給定字元的第一個匹配之處/ 用 法: char *strchr(char *str, char c); 程式例: #include #include int main(void) 函式名: strcmp 功 能: 串比較 用 法: int strcmp(char *str1, char *str2); 看asic碼,str1>str2,返回值 > 0;兩串相等,返回0 程式例: #include #include int main(void) 函式名: strncmpi 功 能: 將一個串中的一部分與另一個串比較, 不管大小寫 用 法: int strncmpi(char *str1, char *str2, unsigned maxlen); 程式例: #include #include int main(void) 函式名: strcpy 功 能: 串拷貝 用 法: char *strcpy(char *str1, char *str2); 程式例: #include #include int main(void) 函式名: strcspn 功 能: 在串中查詢第一個給定字符集內容的段 用 法: int strcspn(char *str1, char *str2); 程式例: #include #include #include int main(void) 函式名: strdup 功 能: 將串拷貝到新建的位置處 用 法: char *strdup(char *str); 程式例: #include #include #include int main(void) 函式名: stricmp 功 能: 以大小寫不敏感方式比較兩個串 用 法: int stricmp(char *str1, char *str2); 程式例: #include #include int main(void) 函式名: strerror 功 能: 返回指向錯誤資訊字串的指標 用 法: char *strerror(int errnum); 程式例: #include #include int main(void) 函式名: strcmpi 功 能: 將一個串與另一個比較, 不管大小寫 用 法: int strcmpi(char *str1, char *str2); 程式例: #include #include int main(void) 6樓: 裡的strlen,裡的size 7樓: 難道不是strlen嗎? 8樓:匿名使用者 #include int len = strlen(str) c++程式設計:寫一函式,求一個字串的長度。在main函式中輸入字串,並輸出其長度。 9樓:匿名使用者 修改如下: #include using namespace std; int main() return n; 10樓:匿名使用者 #include int length(char *p) 來//傳參這樣 return n; }int main(void) 有幫助的話 給分 給最佳 11樓:匿名使用者 改兩個地方就可以bai了: #include int length(char *p) return n; }int main(void) ;int len; scanf("%s",str); len=length(str); printf("%d\n",len); }我在zhilinux下編譯沒有問題 ,結果也是正dao確的 12樓:土賊12號 int size(char *p) return n; }這段**應該放在main的上面啊 求字串長度函式 c++ 13樓: string 是一個類 不是資料型別 string的實現在各庫中可能有所不同,但是在同一庫中相同一點是,無論你的string裡放多長的字串,它的sizeof()都是固定的,字串所佔的空間是從堆中動態分配的,與sizeof()無關。 有sizeof()為12、32位元組的庫實現。 但是vc6.0測試後sizeof(string)=16.還是跟編譯器有關。 首先看一下sizeof在msdn上的定義: the sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). this keyword returns a value of type size_t. 看到return這個字眼,是不是想到了函式?錯了,sizeof不是一個函式,你見過給一個函式傳引數,而不加括號的嗎?sizeof可以,所以sizeof不是函式。 網上有人說sizeof是一元操作符,但是我並不這麼認為,因為sizeof更像一個特殊的巨集,它是在編譯階段求值的。舉個例子: cout< cout< 在編譯階段已經被翻譯為: cout<<4< cout<<1< 這裡有個陷阱,看下面的程式: int a = 0; cout< cout<
輸出為什麼是4,0而不是期望中的4,3???就在於sizeof在編譯階段處理的特性。由於sizeof不能被編譯成機器碼,所以sizeof作用範圍內,也就是()裡面的內容也不能被編譯,而是被替換成型別。 =操作符返回左運算元的型別,所以a=3相當於int,而**也被替換為: int a = 0; cout<<4< cout<
所以,sizeof是不可能支援鏈式表示式的,這也是和一元操作符不一樣的地方。 結論:不要把sizeof當成函式,也不要看作一元操作符,把他當成一個特殊的編譯預處理。 14樓:檀木妍 sizeof()得到的是資料型別的長度,比如int、char、double型別的sizeof()得到的結果分別是4、1、8.要求字串長度可以用類函式size,即你程式裡的string型別的變數為i,則用i.size()來求i的長度。 15樓: sizeof不是拿來求字串長度的 它是用來求大小的。 求string長度用 i.length();這個方法!這就是i的長度! 16樓:匿名使用者 strlen不是sizeof 窘了 確實應該是i.length(); 17樓:匿名使用者 求字串長度應該是i.length(); 你是說書上讓你補全 那麼,你把原來的題目,完整寫上來,添空處有幾行寫清楚!我讀了你的 修改如下 我測試了幾個,沒有發現問題。dim c s a as string 1 s變數顯然應該用字元型別 dim k as integer,j as integer 這個是我加的變數宣告 c text1 s le... 椴 substring 擷取子串 它有兩種形式,第一種是 string substring int startindex 第二種是 string substring int startindex,int endindex concat 連線兩個字串 replace 替換 它有兩種形式,第一種形式用一... sizeof計算物件的大小是轉換成物件型別的計算,也就是說,同種型別的不同物件其sizeof值都是一致的。所以sizeof str 相當於sizeof char 1另一個sizeof str 相當於sizeof char 對於這種指標型別,在32位計算機中,一個指標變數的返回值通常是4 注意結果是以...輸入任意長度的字串,將該字串中的字元按ASCII碼值升序排列後輸出
c 函式如何傳遞字串,C 函式如何傳遞字串
C語言中,sizeof能求字串長度嗎