您的位置:首页 > 其它

第16周项目2-字符串连接(指针)

2014-12-11 15:12 302 查看
问题及代码:

/* 
*Copyright (c)2014,烟台大学计算机与控制工程学院 
*All rights reserved. 
*文件名称:num.cpp 
*作    者:单昕昕 
*完成日期:2014年12月11日 
*版 本 号:v1.0 
* 
*问题描述:连接两个字符串。
*程序输出:连接后的结果。
*/  
#include <iostream>
using namespace std;
char *pstrcat(char *str1, const char *str2);
int main(){
    char s1[50]="Hello world. ";
    char s2[50]="Good morning. ";
    char s3[50]="vegetable bird! ";
    pstrcat(s1,s2);
    cout<<"连接后:"<<s1<<endl;
    cout<<"连接后:"<<pstrcat(s2,s3)<<endl;  //返回值为char*型,可以直接显示
    return 0;
}
//作为示例,本函数采用了形参为数组,在实现中,直接用下标法进行访问
//实际上,在实现中,完全可以用指针法访问
char *pstrcat(char *str1, const char *str2)
{
    char *p;
    //char *q=str2;  //如果这样会出现错误,如何改程序,可有多种改法
    int i;
    for(p=str1; *p!='\0'; p++); //找到str1的结束
    for(i=0; *(str2+i)!='\0'; i++,p++)  //如果q的定义通过,可以用*(q+i)代替*(str2+i)
    {
        *p=*(str2+i);
    }
    *p='\0';//切记!!
    return str1;
}




运行结果:





知识点总结:

调用函数,连接两个字符串。



学习心得:

调用函数的时候,函数名前面的*不用写。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: