#将一个字符串前 K 个字符逆转到字符串尾部
例:输入 str :abcXYZdefg k=3
out : XYZdefgabc
分析:利用strcpy() 与strncat() 函数完成逆转。
代码实现
#include <stdio.h>
#include <string.h>
int main() {
char str[]="abcXYZdefg";
char tmp[100];
strcpy(tmp,str+3);
strncat(tmp,str,3);
printf("%s\n",tmp);
}
补充:1strcpy() .原型声明:char strcpy(char dest, const char *src);
头文件:#include <string.h> 和 #include <stdio.h>
功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
2.strncpy() 语法
char *strncpy(char *destinin, char *source, int maxlen);
参数
destinin:表示复制的目标字符数组;
source:表示复制的源字符数组;
maxlen:表示复制的字符串长度
strncpy函数用于将指定长度的字符串复制到字符数组中 ,但strncpy()无法实现1图所示的功能
3,strcat() 功能
extern char strcat(char dest, const char src);
把src所指向的字符串(包括“\0”)复制到dest所指向的字符串后面(删除dest原来末尾 的“\0”)。要保证dest足够长,以容纳被复制进来的src。*src中原有的字符不变。返回指向dest的指针
extern char *strcat(char *dest, const char *src);
用法
#include <string.h>
头文件
在C中,函数原型存在 <string.h>头文件中。
在C++中,则存在于头文件中。
4.strncat() 原型
char * strncat(char *dest, const char *src, size_t n);
【参数说明】:dest指向目标字符串,src为指向源字符串。
库名
#include <string.h>
功能
把src所指字符串的前n个字符添加到dest所指字符串的结尾处,并覆盖dest所指字符串结尾
的’\0’,从而实现字符串的连接。
说明
src和dest所指内存区域不可以重叠,并且dest必须有足够的空间来容纳src的字符串。
返回值
返回指向dest的指针。