c_str()和strcasecmp
生活随笔
收集整理的這篇文章主要介紹了
c_str()和strcasecmp
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? ? ?c_str()和strcasecmp這兩個函數以前沒怎么玩過,今天碰到了,來學習一下。
?
int main() {char str1[10] = "AB";char str2[10] = "ab";if(!strcasecmp(str1,str2)){printf("yes\n");}return 0; }打印:yes
?
strcasecmp的作用是比較兩個字符串是否相等,且不區分大小寫。其頭文件在<string.h>中。我這里的編譯環境是gcc,我在VS2013上沒編譯過去,也是奇怪。
?
? ? c_str()屬于c++中的函數,其目的是將c++對應的string轉換成C風格的字符串。但C風格的字符串可以直接賦值給C++中的string,感覺這對C++有點不公平,但誰讓C++是大哥大呢。
先看一段代碼:
?
int main() {char str1[10] = "123";//char str2[10]=str1;錯誤string s1 = "abc";string s2 = s1;cout << s2;return 0; }?
打印:abc
C中字符串復制是通過strcpy來實現的,不能直接賦值。但C++中的string可以。
?
?
int main() {char str1[10] = "123";string s =str1;cout << s<<endl;string s1 = "456";char str2[10];strcpy(str2,s1.c_str());printf("%s\n", str2);return 0; }打印:123
?
? ? ? ? ? ? 456
?
這兩個函數很簡單,只是之前用的少。
?
?
?
總結
以上是生活随笔為你收集整理的c_str()和strcasecmp的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: map和struct的多重嵌套
- 下一篇: time,atoi,strstr