strcat、strcpy、strcmp、strlwr、strupr的C语言实现以及简单用法

strcat 字符串的嫁接(连接)

#include "stdio.h"
 
char *strcat(char *str1, char *str2)
{
	if((str1==NULL)||(str2==NULL)) throw "Invalide arguments!";
	char *pt = str1;
	while(*str1!='\0') str1++;
	while(*str2!='\0') *str1++ = *str2++;
	*str1 = '\0';
	return pt;
}
 
int main()
{
	char a[]= "markyuan";
	char b[]= "yyyyy";
	char *cat = strcat(a,b);
	printf("%s\n",cat);
}

strcpy 字符串的拷贝

strcpy(char *str1,str2)
{
	char *p1,*p2;
	p1=str1;
	p2=str2;
	while(*p2)
	*p1++=*p2++;
	return 0;  //这里可以改
}

strcmp 字符串的比较

strcmp(char *str1,str2)
{
	char *p1,*p2;
	p1=str1;
	p2=str2;
	while(*p2 && *p1)
	if(*(p1++)- *(p2++) )return *(p1++)- *(p2++) ;
	return 0;    //这里可以改
}

strlwr 字符串的大写字母转小写字母

// 字符全部转换为小写
char* _strlwr_d(char* src)
{
	while (*src != '\0')
	{
		if (*src > 'A' && *src <= 'Z'){
			//*src += 0x20; 
			*src += 32;
		}
		src++;
	}
	return src;
}

strupr字符串的小写字母转大写字母

// 字符全部转换为大写
char* _strupr_d(char* src)
{
	while (*src != '\0')
	{
		if (*src >= 'a' && *src <= 'z')
			//在ASCII表里大写字符的值比对应小写字符的值小32.
			//*p -= 0x20; // 0x20的十进制就是32
			*src -= 32;
		src++;
	}
	return src;
}

在这里插入图片描述

大小写转换的调用

int main()
{	
	char *p = "Neusoft";
	char k[256];
	// 字符串全部转成大写
	_strupr_d(k);
	// 字符串转换成小写
	//_strlwr_d(k);
	cout << k <<endl;
	system("pause");
	return 0;
}

库函数调用的应用

#include<stdio.h>
int main()
{
 char str1[20] = { "hello" };
 char str2[] = { "bit" };
 printf("%s", strcat(str1, str2));
 system("pause");
 return 0;
}

 


#include<stdio.h>
int main()
{
 char str1[20];
 char str2[] = { "bit" };
 printf("%s", strcpy(str1, str2));
 system("pause");
 return 0;
}

 


#include<stdio.h>
int main()
{
 char str1[10] = { "hello" };
 char str2[10] = { "bit" };
 char max[10];
 if (strcmp(str1, str2) > 0);
 printf("%s",str1 );
 if (strcmp(str1, str2) < 0);
 strcpy(str2, str1);
 printf("%s",str2 );
 system("pause");
 return 0;
}

 

 

#include<stdio.h>
int main()
{
 char str[] = { "HELLO" };
 printf("%s\n", strlwr(str));
 printf("%d", strlen(str));
 system("pause");
 return 0;
}
发布了156 篇原创文章 · 获赞 47 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_38769551/article/details/105371090
今日推荐