C語言高階之路(二) 字串操作常見模型

2022-09-22 05:12:07 字數 2434 閱讀 1266

1.while模型

#define _crt_secure_no_warnings#include 

#include

#include

//求乙個字串中某個子串出現的次數

int getcout(char *str, char *substr, int *count)

while (*p != '\0'

)

else

} ;//通過指標把結果傳出來

*count =ncout;

return

rv;}

intmain()

printf(

"coutn = %d \n

", ncout);

return0;

}

2.兩頭堵模型:兩種寫法

//

求去掉兩邊空格之後的字串長度,指標作為形參傳入,將結果賦值給指標指向的記憶體

int trimspacestr01(char *p, int *mycount)

while (isspace(p[j]) && j>0

)

ncount = j - i + 1

; *mycount =ncount;

return

ret;}//

求去掉兩邊空格之後的字串,將指標作為形參傳入,將結果賦值給形參指向的記憶體空間

int trimspacestr2(char *p, char *buf)

while (isspace(p[j]) && j>0

)

ncount = j - i + 1

;

// strncpy(buf, p +i, ncount);

buf[ncount] = '\0'

;

return

ret;}//

這種寫法不好

//不要輕易去改變指標輸入特性中in記憶體塊的記憶體

int trimspacestr2_notgood(char *p)

while (isspace(p[j]) && j>0

)

ncount = j - i + 1

; strncpy(p, p +i, ncount);

p[ncount] = '\0'

;

return

ret;

}void

main()

; trimspacestr2(p, buf);

printf(

"buf = %s\n

", buf);

}}

3.字串反轉模型

#define _crt_secure_no_warnings#include 

#include

#include

//將某個字串逆置

void

main()

printf(

"p:%s \n

", p);

}

4.兩個輔助指標變數挖字串

#define _crt_secure_no_warnings#include 

#include

#include

/*有乙個字串符合以下特徵(」abcdef,acccd,eeee,aaaa,e3eeeee,sssss,";),要求寫乙個函式(介面),輸出以下結果

1) 以逗號分割字串,形成二維陣列,並把結果傳出;

2) 把二維陣列行數運算結果也傳出。

*/int spitstring(const

char *buf1, char c, char buf[10][30], int *num)

;

//步驟1 初始化條件 ptmp,p都執行檢索的開頭

p =buf1;

ptmp =buf1;

while (*p != '\0'

)

else

} ;*num =ncount;

return0;

}int spitstring02(const

char *buf1, char c, char buf[10][30], int *num)

//步驟1 初始化條件 ptmp,p都執行檢索的開頭

p =buf1;

ptmp =buf1;

while (*p != '\0'

)

else

} ;*num =ncount;

return

ret;

}void

main()

for (i = 0; i)

system(

"pause");

}

C語言 3 字串

字元陣列 char 看做乙個特殊的字元陣列,在字串結束為止新增 0 結束符 ascii碼0 沒有 0結尾的是普通的字元陣列。使用雙引號定義的字串自動在尾部加上 0 puts s 函式 輸出記憶體直至遇到 0 陣列變數名代表了陣列位址,例如char s 20 s就是陣列位址,不用 s gets s 函...

C語言基礎(六)字串及其操作

2016.7.28 字串 由字元陣列組成並且以 0 作為結束符。用雙引號包圍起來。字串 字元陣列構成 最後元素 0 一般形式 hello world 字串和字元陣列主要區別 0 字元陣列沒有 0 字串有 int main int argc,const char argv 字串初始化 char arr...

2 3 字串基礎操作(二)

s.startswith l 判斷字串是否以l開頭 s.endswith n 判斷字串是否以n結尾 計算結果 true false true false s.find x 找到這個字元返回下標,多個時返回第乙個 不存在的字元返回 1 s.index x 找到這個字元返回下標,多個時返回第乙個 不存在...