(一)strcmp函式
strcmp函式是比較兩個字串的大小,返回比較的結果。一般形式是:
i=strcmp(字串1,字串2);
其中,字串1、字串2均可為字串常量或變數;i 是用於存放比較結果的整型變數。比較結果是這樣規定的:
①字串1小於字串2,strcmp函式返回乙個負值;
②字串1等於字串2,strcmp函式返回零;
③字串1大於字串2,strcmp函式返回乙個正值;那麼,字元中的大小是如何比較的呢?來看乙個例子。
實際上,字串的比較是比較字串中各對字元的ascii碼。首先比較兩個串的第乙個字元,若不相等,則停止比較並得出大於或小於的結果;如果相等就接著 比較第二個字元然後第三個字元等等。如果兩上字串前面的字元一直相等,像"disk"和"disks" 那樣, 前四個字元都一樣, 然後比較第 五個字元, 前乙個字串"disk"只剩下結束符'/0',後乙個字串"disks"剩下's','/0'的ascii碼小於's'的ascii 碼,所以得出了結果。因此無論兩個字串是什麼樣,strcmp函式最多比較到其中乙個字串遇到結束符'/0'為止,就能得出結果。
注意:字串是陣列型別而非簡單型別,不能用關係運算進行大小比較。
if("abc">"def") /*錯誤的字串比較*/
if(strcmp("abc","def") /*正確的字串比較*/
(二)strcpy函式
strcpy函式用於實現兩個字串的拷貝。一般形式是:
strcpy(字元中1,字串2)
其中,字串1必須是字串變數,而不能是字串常量。strcpy函式把字串2的內容完全複製到字串1中,而不管字串1中原先存放的是什麼。複製後,字串2保持不變。
例:
注意,由於字串是陣列型別,所以兩個字串複製不通過賦值運算進行。
t=s; /*錯誤的字串複製*/
strcpy(t,s); /*正確的字串複製*/
strcmp函式和strcpy函式
一 strcmp函式 strcmp函式是比較兩個字串的大小,返回比較的結果。一般形式是 i strcmp 字串,字串 當中,字串 字串 均可為字串常量或變數 i 是用於存放比較結果的整型變數。比較結果是這樣規定的 字串1小於字串2,strcmp函式返回乙個負值 字串1等於字串2,strcmp函式返回...
strcmp函式和strcpy函式
一 strcmp函式 strcmp函式是比較兩個字串的大小,返回比較的結果。一般形式是 i strcmp 字串,字串 當中,字串 字串 均可為字串常量或變數 i 是用於存放比較結果的整型變數。比較結果是這樣規定的 字串1小於字串2,strcmp函式返回乙個負值 字串1等於字串2,strcmp函式返回...
strcmp函式和strcpy函式
一 strcmp函式 strcmp函式是比較兩個字串的大小,返回比較的結果。一般形式是 i strcmp 字串,字串 當中,字串 字串 均可為字串常量或變數 i 是用於存放比較結果的整型變數。比較結果是這樣規定的 字串1小於字串2,strcmp函式返回乙個負值 字串1等於字串2,strcmp函式返回...