C语言没有专门用于储存字符串的变量类型,字符串都被储存在char类型的数组中。
C中的字符串一定以空字符\0结束,这意味着数组的容量必须至少比存储字符串的字符数多1。
| 序号 | 转换说明 | 输出 |
|---|---|---|
| 1 | %c | 单个字符 |
| 2 | %d,%i | 有符号十进制整数 |
| 3 | %u | 无符号十进制整数 |
| 4 | %e,%E | 浮点数,e 记数法 |
| 5 | %f | 浮点数,十进制记数法 |
| 6 | %o | 无符号八进制整数 |
| 7 | %p | 指针 |
| 8 | %s | 字符串 |
| 9 | %x,%X | 无符号十六进制整数 |
| 10 | %% | 打印一个% |
<string.h>文件提供了一些分析和操控字符串的函数,其中一些函数以更通用的方式处理内存。
| 序号 | 原型 | 描述 |
|---|---|---|
| 1 | int memcmp(const void * buf1 , const void * buf2 , unsigned int n) | 比较内存区域的buf1和buf2的前n个字节 |
| 2 | void *memcpy(void *dest , const void src, unsigned int n) | 从源src内存拷贝n个字节到目标dest内存 |
| 3 | int *memset(void *s , int ch , unsigned int n) | 将s中当前位置后面的n个字节用ch替换并返回s |
| 4 | char *strcat(char *dest , const char *src) | 把src(包括\0)复制到dest后面(删除 dest原来末尾的\0) |
| 5 | char *strncat(char *dest , const char *src , unsigned int n) | 把src的前n个字符添加到dest的结尾处并覆盖 dest结尾的\0 |
| 6 | char *strcpy(char *dest , const char *src) | 把src开始且含有\0的字符串复制到dest,返回dest |
| 7 | char *strncpy(char *dest , const char *src , unsigned int n) | 把src字符串复制n个字节到dest,返回dest |
| 8 | int strcmp(const char *str1 , const char *str2) | 若str1 = str2,则返回零若 str1 < str2,则返回负数若 str1 > str2,则返回正数 |
| 9 | char *strchr(const char *str , char c) | 查找字符串str中首次出现字符c的指针,否则返回NULL |
| 10 | char *strrchr(const char *str , char c) | 查找字符串str中右边首次出现字符c的指针,否则返回NULL |
| 11 | char *strstr(char *str1 , const char *str2) | 如果str2是str1的子串,返回str2首次出现的指针,否则返回NULL |
| 12 | int strlen(const char *str1) | 计算字符串的长度 |
<stdio.h>文件:
| 序号 | 原型 | 描述 |
|---|---|---|
| 1 | int sprintf(char *string , char *format [, argument , ...] ) | 字符串格式输出把格式化的数据写入某个字符串中 |
版权声明:本文为Hongwei_1990原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。