您的位置:首页 > 编程语言 > C语言/C++

c语言中字符串操作的函数

2015-05-15 09:59 267 查看
#include <stdio.h>
#include <string.h>//务必包含这个头文件

void str_cat(char *str1, char *str2);
void str_cpy(char *str1, char *str2);
void str_n_cpy(char *str1, char *str2, int n);
void str_cmp(char *str1, char *str2);
/*
函数strlen(字符串),     求字符串长度;
函数strlwr(字符串),     将字符串中大写转为小写;
函数strupr(字符串),    将字符串中小写转为大写*/
int main( )
{
char str1[30] ,str2[10],str3[30];

printf("第一个字符串:\n");
gets(str1);

printf("第二个字符串:\n");
gets(str2);

str_cmp(str1, str2);

getchar();

return 0;
}

void str_cat(char *str1, char *str2)
{
/*strcat(字符数组1,字符数组2),字符串连接操作,该函数的意思是把字符数组2放置到字符数组1后边,结果保存到字符数组1中*/
strcat(str1,str2);
printf("连接后的字符串为:\n");
puts(str1);
}

void str_cpy(char *str1, char *str2)
{
/*strcpy(字符数组1,字符数组2),字符串复制操作,该函数的意思是吧字符数组2复制到字符数组1里面,会自动更新字符数组的值,不会保存部分*/
strcpy(str1,str2);
printf("复制后的字符串为:\n");
puts(str1);
}

void str_n_cpy(char *str1, char *str2, int n)
{
/*strcpy(字符数组1,字符数组2, 字符个数),字符串复制操作,该函数的意思是吧字符数组2的前n个字符复制到字符数组1里面,只会覆盖相应的部分,其他内容不变*/
strncpy(str1,str2,n);
printf("复制 n 字符串后的字符串为:\n");
puts(str1);
}

void str_cmp(char *str1, char *str2)
{
int i;
/*strcmp(字符数组1,字符数组2),对两个字符的ASIC以此进行比较,返回值为数字*/
i = strcmp(str1,str2);

printf("比较后发现:\n           ");

if(i > 0)
printf("字符串1大\n");
else
if(i < 0)
printf("字符串2大\n");
else
printf("两个字符串相同\n");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: