zoukankan      html  css  js  c++  java
  • 字符串拷贝函数

    这个也算是企业招工里面比较常见的一道笔试面试题了,非常简单。个人觉得考的主要是对指针使用的熟练程度,还有对字符串类内部原理的掌握程度。

    #include<iostream> using namespace std; //字符串拷贝函数 char * sCpy(char *strDest, char *strSource) { _ASSERT((strDest != NULL) && (strSource!=NULL)); char *d = strDest; //获取dest的当前位置 char *s = strSource; //获取source的当前位置 while ((*d++ = *s++) != '') //未到最后一位,作循环 { } *d = ''; //补充最后一位 return strDest; } int main() { char *strSource = "hello,world"; char *strDest = new char[strlen(strSource)+1]; //注意,strlen函数的返回长度是不包括''的,所以要加1 _ASSERT(strDest != NULL); char *strReturn = sCpy(strDest,strSource); cout<<"形参返回值"<<strDest<<endl; cout<<"函数返回值"<<strReturn<<endl; //不作释放操作也应该是没问题的,主线程退出后系统会回收资源 delete strSource,strDest,strReturn; strSource = strDest = strReturn = NULL; return 0; }

    strcpy(str1,str2)函数能够将str2中的内容复制到str1中,为什么还需要函数返回值?应该是方便实现链式表达式,比如:

    int i_length = strlen(strcpy(str1,str2));

  • 相关阅读:
    eclipse
    ORA00904:标识符无效,preparedstatement
    mysql 创建用户
    web 默认servlet
    https tomat
    gzip
    sftp 上传文件
    jquery dwrutil confilit
    xmlbeans读写xml文件
    敏捷开发“松结对编程”实践大型团队篇
  • 原文地址:https://www.cnblogs.com/nerohwang/p/3482351.html
Copyright © 2011-2022 走看看