问题及代码:
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:Project4.cpp
* 作 者:李楠
* 完成日期:2014年12月12日
* 版 本 号:v1.0
*
* 问题描述:用指针作形参方案 比较两个字符串 返回1,-1,0。
* 输入描述:略
* 程序输出:略
*/
#include <iostream>
using namespace std;
int pstrcmp(const char *str1,const char *str2);
int main()
{
char s1[50]="You are a good gril.";
char s2[50]="You are a apple for my eyes.";
cout<<"\""<<s1<<"\"与"<<"\""<<s2<<"\"比较结果为"<<pstrcmp(s1,s2)<<endl;
return 0;
}
int pstrcmp(const char *str1,const char *str2)
{
int i=0;
while(*(str1+i)==*(str2+i)&&*(str1+i)!='\0'&&*(str2+i)!='\0')
i++;
if(*(str1+i)>*(str2+i))
return 1;
else if(*(str1+i)<*(str2+i))
return -1;
else
return 0;
}
运行结果:
知识点总结:
题目条件中说要按照Strcmp的返回值相同,也就是说要返回-1,0,1这几个值,同时要注意constant 所以不能写成*p=*str1,p++,这种形式,因为是固定的不能改变的,所以我就写成了*(str1+i)的形式,但是别的方法不知道怎么写~~求教!!!!!
学习心得:
项目二真的是费了老劲了!!!现在才写完,要死啊!!!