標籤:c++
#include <iostream>#include <string.h>using namespace std;int my_len(const char *str){int len = 0;//while (*str != '\0')//{//++len;//++str;//}while (*(str++) != '\0'){++len;}return len;}void my_cpy(char *dst,const char *src){while (*src != '\0'){*dst = *src;++dst;++src;}}int main(){char str1[] = "abc";//後面自動加上'\0'char str2[] = { 'a', 'b', 'c' };//後面不會自動加上個'\0',作為字串會一直找到'\0'標誌char str3[] = { 'a', 'b', 'c' ,'\0'};char str4[10] = "abc";// 4 3 4 10cout << sizeof(str1) << "," << sizeof(str2) << "," << sizeof(str3) << "," << sizeof(str4) << endl;// 3 15 3 3cout << strlen(str1) << "," << strlen(str2) << "," << strlen(str3) << "," << strlen(str4) << endl;cout << my_len(str1) << "," << my_len(str2) << "," << my_len(str3) << "," << my_len(str4) << endl;// abc abc燙燙燙燙蘟bc abc abccout << str1 << "," << str2 << "," << str3 << "," << str4 << endl;//字串賦值//str1 = str2;// 錯誤,數組名是地址常量//str1 = "hello";// 錯誤,數組名是地址常量strcpy(str4,str1);//strcmp(str1,str2);字串比較//strcat(str3,str2);字串拼接,必須判斷空間是否夠//字串分割char str[] = "this is a test";char *token = strtok(str, " ");while (token != NULL){cout << token << endl;token = strtok(NULL," ");}return 0;}
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
Java程式員學習C++之字串