微控制器c語言字串對比問題,微控制器C語言字串對比問題

時間 2021-10-14 20:16:29

1樓:匿名使用者

要寫for迴圈判斷,不能直接用==,也不能用strcmp等標準庫裡面的函式

2樓:風若遠去何人留

c語言字串對比可以呼叫標準庫函式strcmp。

該函式宣告在string.h中,形式為

int strcmp(char *a, char *b);

返回值有三種情況,1,0或-1.

其比較原則為:

1 從第一個字元開始按照ascii碼值比較,如果a的比b的大,返回1;如果a的比b的小,返回-1;如果相等,繼續比較下一個字元。

2 當遇到任意一個字串達到尾部(值為\0),退出比較過程。

3 如果長度相等,即二者均達到\0,返回0,此時表示二者相等。

4 如果a的長度大,返回1,否則返回-1。

3樓:網路小度

對比 長度對比還是大小寫對比,請明示

長度對比有專門的函式,計算出字串長度,對比

大小寫對比可以用指標的方式,一一對比。

4樓:

字串的比較需要一個個字元比較,不能用直接==判斷。

如果支援strcmp函式的,可以直接用這個函式如果不支援的,可以自己寫

char *ls = "mnjhg00000"; // 比較用的字串

char *a = lk, *b = ls;

bool bsame = true;

while (*b!='\0')}

5樓:匿名使用者

== c不能過載操作符的

用strcmp 函式吧

6樓:匿名使用者

都定長了,一個字元一個字元比較啊

請教c語言字串和字元陣列的比較問題

7樓:yuanyuan源遠

利用fgets()取得一個字串,直到讀取到"回車"符,而你得到的字串中含有「回車」(ascii:10),比你要比較的字串多一個「回車」,所以strcmp()比較結果一直不為零。

如第一次while迴圈的結果:

8樓:it孤鶩

#include

#include

#include

int main(void)

fclose(fp);

system("pause");

return 0;

}上面的**更靠譜

你用過用fgets 那麼處理的字串後面一直要加'\0'

9樓:匿名使用者

fgets()到buff後,沒有\0結束標記

10樓:餘煙琦釵

c語言的字元陣列有兩種,比較方式也有所不同。

1字串。

c語言的字串是用字元陣列表示的。約定以'\0'(ascii碼0)作為結尾標記。

對於字串類的字元陣列,可以用string.h中的strcmp函式進行比較。

intstrcmp(char

*str1,

char

*str2);

其比較規則為:

a,從左向右依次比較每個元素;

b,如果出現str1的元素ascii碼比較大,則返回1;如果出現str2元素ascii碼比較大,則返回-1。如果相等,則繼續。

c,如果一直相等,直到遇到\0,這時檢查是否均為\0,如果均為\0,那麼返回0;

d,如果str1到\0,而str2沒到,返回-1;

否則返回1。

總結規則就是,如果str1比str2大,返回1;如果相等,返回0;如果str1小,返回-1。

2不帶\0結束的字元陣列。

對於此類陣列,沒有庫函式可供使用,只能自己寫函式進行比較。規則可以仿照strcmp的規則。

由於沒有\0作為結束,所以引數中必須傳入每個陣列的元素個數。

int char_array_cmp(char *s1, int l1, char *s2, int l2)

51微控制器中C語言int能轉換為字串型別嗎?怎麼轉換

因為是c51,所以不能用 vc 裡面的c語言 eg itoa,也不要用列印的 eg sprintf 為什麼?因為c51的記憶體太小 如果這樣用非常佔用資源.下面的朋友回答就顯得不夠專業了.所以,一般我們是這樣自己寫 使用實現的 字串改為陣列的形式unsigned char dat 5 dat 4 n...

微控制器C語言程式設計題,微控制器C語言程式設計題

爬行的山羊 這是兩個題啊。哈哈好做,第一個有c語言的冒泡法排序,第二個用中斷,讀,輸出就可以 include define led0 0 define led1 1 define led2 2 define ledport p2 sbit sw0 p1 0 sbit sw1 p1 1 sbit sw...

微控制器c語言中定義,微控制器C語言中 定義a1 P0 1 a2 P0 2 a8 P0 7 b P2 0 。a1 a8不斷隨機為1。

這樣實現 sbit p20 p2 0 char consum 0 char i,bitflag 0x01 for i 0 i 8 i if consum 3 p20 1 希望我的回答對你有幫助,有什麼問題歡迎一起 謝謝。 如果是c51微控制器 include void main 如果找完一次p0口後...