/*
寫乙個函式,它從乙個字串中提取乙個子字串,函式原型為:
int substr(char dst,char src,int start,int len);
任務是從src陣列起始位置向後偏移start個字元的位置開始,最多複製len個非nul字元到dst陣列,複製完畢後,dst陣列必須以nul位元組結尾
函式的返回值是儲存於dst陣列中的字串的長度.
如果start所指定的位置越過了src陣列的尾部,或者start或len的值為負值,那麼複製到dst陣列的是個空字串.
*/用陣列來寫乙個函式原型
if語句判斷條件
若乙個條件成立,為真,則執行if下的語句,為假,則不執行
若有多個條件,用邏輯運算子&&和||兩個符號來連線.
還有常用的 ! (非)判斷,如(!0),!=等.
計算字元陣列的長度
一般乙個字元陣列的儲存,在其末尾用'\0'來結尾,所以用src[i] = '\0'來判斷是否到達陣列的結尾.
迴圈語句的執行條件要設定準確,否則迴圈的執行會出現問題
**的實現
/*
寫乙個函式,它從乙個字串中提取乙個子字串,函式原型為:
int substr(char dst,char src,int start,int len);
任務是從src陣列起始位置向後偏移start個字元的位置開始,最多複製len個非nul字元到dst陣列,複製完畢後,dst陣列必須以nul位元組結尾
函式的返回值是儲存於dst陣列中的字串的長度.
如果start所指定的位置越過了src陣列的尾部,或者start或len的值為負值,那麼複製到dst陣列的是個空字串.
*/#define _crt_secure_no_warnings
#include int main(void)
printf("n = %d\n", n);
//判斷複製過程**現的問題,如果出現問題則終止程式
if ((start < 0) || (len < 0) || (start > n))
//複製陣列內容
for (int i = start-1;i < (start-1 + len);i++)
dst[k] = '\0';//複製完畢,目標陣列最後加上'\0'表示字元陣列結束
printf("src = %s\n", src);
printf("dst = %s\n", dst);
return 0;}/*
輸出結果
please input array:thisisacprogram
0the value of start:3
the value of len:5
n = 15
src = thisisacprogram
dst = isisa
*/
在乙個字串中尋找另外乙個字串
在乙個字串中尋找另外乙個字串 public class text foundit true break test system.out.println foundit?found it didn t find it 該段程式有點難以理解,主要就是if語句的理解,if searchme.charat ...
從乙個字串中獲取中文
中文的編碼方式與英文不同,編碼方式有utf 8 和gb2312是中國的編碼,中文佔兩個位元組,而unicode 是中英文全部佔兩個位元組。在計算機世界中,美國定義了0 255這256個數表示不同的狀態,0 127中有英文大小寫字母和數字等,128 255這128個狀態代表了下劃線 方框線等擴充套件字...
php判斷乙個字串包含另乙個字串
a 58252,58253 如果 a 中存在 b,則為 true 否則為 false。b 58253 if strpos a,b false else 查詢字串在陣列中出現的次數 array array 1,hello 1,world hello 11 計算 string在 array 需為陣列 中...