連接兩個(gè)字符串
char a[30] = "kaixuan";
char b[] = "520";
char * c = strcat(a, b);//
//char* c = strcat(a, b);//將末尾的\0也加入進(jìn)去
if (c != NULL)
printf("追加成功杨刨!");
printf("%s", a);
比較兩個(gè)字符串ASCII碼大小
char a[] = "aab";
char b[] = "aac";
int c = strcmp(a, b);
//比較兩字符串\0前的有效字符串的ASCII碼大小
if (c > 0)
printf("a > b");
else if (c == 0)
printf("a == b");
else
printf("a < b");
獲取字符有效長(zhǎng)度
char a[] = "aab";
size_t b = strlen(a);//獲取字符串有效長(zhǎng)度
//size_t == unsigned int
printf("%d", b);
數(shù)組復(fù)制
char a[20];
char b[] = "kaixuan";
char * c = strcpy(a, b);//復(fù)制數(shù)組b的有效字符到a,返回字符串的首地址
//char *c = strncpy(a,b,10);//復(fù)制前10個(gè)字符串
printf("%s", c);
格式化輸入
char a[20];
char b[] = "kaixuan";
int c = 1234;
//格式化字符串輸入 將字符串和整形變量放入一個(gè)字符串中
sprintf(a, "%s,%d", b, c);
printf("%s", a);
格式化輸出
char a[] = "kasixuan 300";
char b[20];
int c=0;
//將字符串格式化取出后賦值給b两波,c
sscanf(a, "%s %d", b, &c);
printf("%s, %d\n", b,c);
//返回個(gè)人化個(gè)數(shù)亡笑,為格式化返回-1
獲取一個(gè)字符的位置
char a[] = "kansixuan 300";
//獲取某個(gè)字符第一次出現(xiàn)的位置幽歼,返回此位置往后的字符串內(nèi)容
char * c = strchr(a, 'n');//返回 nsixuan 300
printf("%s", c);
獲取字符串位置
char a[] = "kansixuan 300";
//獲取某個(gè)字符串第一次出現(xiàn)的位置张咳,返回此位置往后的字符串內(nèi)容
char * c = strstr(a, "xuan");//輸出 xuan 300
printf("%s", c);
字符串分割
char a[] = "kans.ixuan.300";
//字符串分割
char* c = strtok(a, ".");
while (c != NULL) {
printf("%s\n", c);
c = strtok(NULL, ".");
}
字符串轉(zhuǎn)數(shù)值
char a[] = "3045454844";
int b = atoi(a);
double c = atof(a);
long d =atol(a);
long long e = atoll(a);
printf("%d\n", b);
printf("%f\n", c);
printf("%d\n", d);
//printf("%lf\n", e);//占位符未知
獲取變量類型
char* a, b;
//輸出變量類型
printf("%s\n",typeid(a).name());//char*
printf("%s\n", typeid(b).name());//char