2022年7月2日星期六

C strncmp

int strncmp(const char *string1, const char *string2, size_t count);

與strcmp類似,只是多了限定比較長度。(strcmp 參考)
功能:比較兩個字串
回傳:1,0,-1(自己實驗下來,會依據第一個發現不同的字元進行比大小,並回傳結果)
回傳代表意思
-1: string1 < string2
0: string1 = string2
1: string1 > string2
注意一定要確保字串中有空字元”\0”

程式碼(指定長度內有不同)

此處指定比較長度為7
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main(void)
  5. {
  6. int result = 0;
  7. result = strncmp(string1,string2,7);
  8. printf("string1 compare with string2.Result:%d\n\n",result);
  9.  
  10. result = strncmp(string2,string1,7);
  11. printf("string2 compare with string1.Result:%d\n\n",result);
  12.  
  13. result = strncmp(string1,string1,7);
  14. printf("string1 compare with string1.Result:%d\n\n",result);
  15. return 0;
  16. }
執行結果


程式碼(指定長度內無不同)

此處指定比較長度為4
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. char string1[] = "string1";
  5. char string2[] = "string2";
  6.  
  7. int main(void)
  8. {
  9. int result = 0;
  10. result = strncmp(string1,string2,4);
  11. printf("string1 compare with string2.Result:%d\n\n",result);
  12.  
  13. result = strncmp(string2,string1,4);
  14. printf("string2 compare with string1.Result:%d\n\n",result);
  15.  
  16. result = strncmp(string1,string1,4);
  17. printf("string1 compare with string1.Result:%d\n\n",result);
  18. return 0;
  19. }
執行結果


沒有留言:

發佈留言

打賞按讚