当前位置:首页 > 北京头条 > 北京经验

C语言String.h中常用函数

2020-07-21 22:16:33 来源:163健康
浏览量:

连接两个字符串

char a[30] = "kaixuan"; char b[] = "520";char * c = strcat(a, b);////char* c = strcat(a, b);//将末尾的\0也加入进去if (c != NULL)printf("追加成功!");printf("%s", a);

比较两个字符串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");elseprintf("a < b");

获取字符有效长度

char a[] = "aab"; size_t b = strlen(a);//获取字符串有效长度 //size_t == unsigned int printf("%d", b);

数组复制

char a[20]; char b[] = "kaixuan"; char * c = strcpy(a, b);//复制数组b的有效字符到a,返回字符串的首地址 //char *c = strncpy(a,b,10);//复制前10个字符串 printf("%s", c);

格式化输入

char a[20]; char b[] = "kaixuan"; int c = 1234; //格式化字符串输入 将字符串和整形变量放入一个字符串中 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);//返回个人化个数,为格式化返回-1

获取一个字符的位置

char a[] = "kansixuan 300"; //获取某个字符第一次出现的位置,返回此位置往后的字符串内容 char * c = strchr(a, 'n');//返回 nsixuan 300 printf("%s", c);

获取字符串位置

char a[] = "kansixuan 300"; //获取某个字符串第一次出现的位置,返回此位置往后的字符串内容 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, ".");}

字符串转数值

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