linux c語言字串比較問題

2021-12-19 14:32:00 字數 2417 閱讀 9812

1樓:匿名使用者

linux中,c語言字串比較採用strcmp()函式

在linux命令列下,man strcmp,可以看到函式說明:

$ man strcmp

...name

strcmp, strncmp - compare two strings

synopsis

#include

int strcmp(const char *s1, const char *s2);

description

the  strcmp()  function  compares  the  two  strings s1 and s2.  it returns an integer less than, equal to, or greater than zero if s1 is found, respectively, to be less than, to match, or be greater than s2.

strcmp函式比較兩個字串s1和s2. 函式返回小於0,等於0,或大於0的整數,分別對應s1比如 s1 = "good"   s2="...this is good", 從s2取後四位進行兩個字串比較,**如下:

#include

#include

int main()

2樓:善良的猛龍過江

用指標分別只想兩個字串的首地址,然後後面的指標加4,在用strcmp( ),進行比較!char *p1="good".char *p2="this is good".

char *p3. p3=*(p+4)

strcmp (char *p1,char *p3).

c語言字串比較

3樓:祈平聞人半蕾

strcmp()

或strncmp()

用unsigned

char

變數則用整型量於等於於比較

檔案比較程式用自編

unix,linux

用命令diff,

比較兩檔案同比較輸內容等要求命令列設

dos(windows/console)

用命令comp

比較兩檔案或檔案同

與unix,linux

diff

同異linux原始碼公興趣diff程式載看我沒看原始碼估計應用c寫diff用見unix,linux

manpage

comp用見

help

4樓:星月小木木

strcmp(str1,str2)函式是比較兩個字串的函式:

設這兩個字串為str1,str2,

若str1==str2,則返回零;

若str1>str2,則返回正數;

若str1s2時,返回正數;

即:兩個字串自左向右逐個字元相比(按ascii值大小相比較),直到出現不同的字元或遇'\0'為止。如:

"a"<"b" "a">"a" "computer">"compare"

特別注意:strcmp(const char *s1,const char * s2)這裡面只能比較字串,即可用於比較兩個字串常量,或比較陣列和字串常量,不能比較數字等其他形式的引數。

ansi標準規定,返回值為正數,負數,0 。而確切數值是依賴不同的c實現的。

所以:用它比較follow me和computer design的話,它會只比較f與c這兩個字串的首元素的大小,所以follow me 比較大。

5樓:李大蔥

int stringcmp(char *a,char *b)else break;

}return(j);

}主函式不變

6樓:匿名使用者

你這樣寫法讓人家怎麼看

7樓:悲傷吥想懂

你整理下順序再說。。。。。。。。

linux下c語言關於指標和字串函式呼叫的問題—段錯誤

8樓:萇賓

printf("%s\n",p1);//p1代表的是字串首地址。

*p="goodbye"; //編譯時會出錯。正確格式p="goodbye";

char *func() //函式指標的寫法,返回一個指標,如庫函式malloc,返回就是一段記憶體塊的首地址。

你的程式是兩次輸出hello,如果要將指標內容更改,可以使用你說的這個格式char *func()

#include "stdio.h"

char *func();

int main()

char *func()

9樓:匿名使用者

*p1是指的字串的中的一個字元,要求輸出的是整個字串

c語言字串陣列的問題C語言字串陣列的問題

include int main scanf s a for i 0 a i 0 i for j 0 j 5 j 修改 1 下標從0 4,共5個 return 0 每行結尾的 僅僅是為了連線字串使用的,如果一個字串過長,寫在一行比較不合適,就在該行結尾處加上一個反斜槓 就可以在下邊的行繼續寫這個字串...

c語言字串匹配程式設計問題

您好,下面的程式,測試通過!歡迎 include using namespace std void main if pb 0 break else pb b pa cout void main if pb 0 break else pb b pa printf d n local 這還不簡單,這已經...

關於C語言的字串問題

應該不可以,函式指標本質傳遞的是這個函式在記憶體中的起始地址,而字串不可以弄。不過高階語言分配的時候,會自動建立一個叫做 符號表 的資料結構,裡面有這個程式所有的宣告識別符號和其地址 大小等資訊,你如果可以找到訪問這個表的方法,就能實現你的這個想法了。不過我也只知道有這個東西,卻不知道如何去訪問,現...