C++第17周项目2——用指针玩字符串(7)比较

本文详细介绍了如何使用指针在CSDN博客中操作字符串,包括不同类型的指针(整型、字符型、指针的指针)的应用场景与实例代码,特别强调了指针在函数传递中的灵活性。通过比较两个字符串的函数实现,展示了在字符串处理中的高效编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565


【项目2-用指针玩字符串】神奇的指针哟,指向整型的指针int *p1,可以操作整型数组int a[];指向字符型的指针char *p2,可以操作字符数组(字符串)char str[];指向指针的指针可以操作二维数组。更灵活的是,在函数的传递中,指针、数组名在一定程度上可以互换。
  本项目试图通过编制操作字符串的函数,实现字符串的操作。

  请编制函数,其功能是对字符串的进行操作

7、

功能:比较两个字符串,返回值同strcmp()

用数组名作形参:int astrcmp(const char str1[], const char str2[])

用指针作形参:int pstrcmp(const char *str1, const char *str2)

参考解答:
//7. 比较两个字符串,返回值同strcmp()
#include <iostream>  
#include <iomanip>
using namespace std;
//int astrcmp(char str1[], char str2[]); //自行实现
int pstrcmp(char *str1, char *str2);
int main(void)
{
	char *s[81]={"Tudou","Shanyaodan","Yangyu","Malingshu"};
	int i=0,j=0;
	cout<<"土豆大PK:"<<endl;
	cout<<setw(12)<<" ";
	for(;i<4;i++)
	{
		cout<<setw(12)<<s[i];
	}
	cout<<endl;
	for(i=0;i<4;i++)
	{
		cout<<setw(12)<<s[i];
		for(j=0;j<4;j++)
		{
			cout<<setw(12)<<pstrcmp(s[i],s[j]);
		}
		cout<<endl;
	}
	return 0;
}


//str>str2,返回1
//str==str2,返回0
//str<str2,返回-1
int pstrcmp(char *str1, char *str2)
{
	char *p=str1,*q=str2;
	while(*p==*q&&*p!='\0'&&*q!='\0')
	{
		p++;
		q++;
	}
	if (*p>*q)
		return 1;
	else if(*p<*q)
		return -1;
	else 
		return 0;
}


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迂者-贺利坚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值