我们在面试的时候,经常会被笔试实现系统函数,比如strcat函数,主要考察大家的C语言功底!

下面黄强老师带领大家实现一下:

#include <stdio.h>
#include <assert.h>
//自己写的strcat函数char* MyStrCat(char* strDest, const char* strSrc)//参数的规范命名,后一个注意设置为const,并且设置一个返回值(为了实现链式表达式,例如int i=strlen(MyStrCpy(a,"abc")))
{assert((strDest != NULL) && (strSrc != NULL));//些函数用于检查,如果为空就停止char* str = strDest; //保存返回值的值while ((*strDest++) != '\0')NULL;//语句尽量简洁,空语句用  NULL;语句strDest--;while (((*strDest++) = (*strSrc++)) != '\0')NULL;return str;
}void main(int args, char* argv[])
{char  a[256];puts("\n请输入第一个字符串:");gets_s(a);char  b[256];puts("\n请输入第二个字符串:");gets_s(b);MyStrCat(a, b);puts(a);
}

看看运行结果:

两个字符串就会被链接在一起!

自己写代码实现C语言系统函数strcat相关推荐

  1. c语言得到系统的函数,c语言系统函数(C language system function).doc

    c语言系统函数(C language system function) c语言系统函数(C language system function) Mathematical function " ...

  2. c语言系统函数——目录操作

    一. 文件夹的系统函数     1.mkdir(),创建一个目录文件.     int mkdir(const char *pathname, mode_t mode);     第一个参数是路径,第 ...

  3. 使用c语言创建4个进程,c语言系统函数——进程的创建

    一 . 进程的创建 1.fork();创建一个独立的进程 pid_t fork(void); 使用这个命令会创建一个独立于父进程而且拷贝父进程全部存储空间的子进程 返回值有三种情况 1.父进程会返回子 ...

  4. C语言字符串函数----strcat()函数用法

    字符串函数<string.h> strcat函数 strcat()函数用于拼接字符串 , 该函数接受两个字符串作为参数. 其函数原型 char *strcat (char *str1,co ...

  5. 在用c语言写代码是这么找出错误,写代码(C语言)常见粗心小错误

    打码(C语言)常见粗心小错误 标签(空格分隔): 博客 自我介绍 本人学院 (http://sdcs.sysu.edu.cn/) 欢迎访问 本人学号 16340213 目录 ##1.前言 小萌新们是不 ...

  6. 随机数c 语言代码大全,C 语言随机数函数

    rand(产生随机数) 相关函数 srand 表头文件 #include 定义函数 int rand(void) 函数说明 rand()会返回一随机数值,范围在0至RAND_MAX 间.在调用此函数产 ...

  7. C语言系统函数Sqrt的实现[输入字符串]

    // MySqrt.cpp : 定义控制台应用程序的入口点. //#include "stdafx.h"float mySqrt(char*n,int size){if (n[0] ...

  8. C语言字符串函数strcat | strcpy | strlen | strcmp的用法及原型

    点击蓝字 关注我们 因公众号更改推送规则,请点"在看"并加"星标"第一时间获取精彩技术分享 来源于网络,侵删 strcat(str1,str2) 意为将字符串s ...

  9. c语言字符串函数strcat strcpy strlen strcmp的用法及原型

    目录 strcat的用法及原型 strcpy的用法及原型 strcmp用法及原型 strlen用法及原型 strcat的用法及原型 strcat(str1,str2) 意为将字符串str2连接到字符串 ...

最新文章

  1. ABP官方文档翻译 6.1.1 MVC控制器
  2. exports与module.exports的区别
  3. 通过设计绿色数据中心寻求循环经济
  4. 2020-11-26((《深入理解计算机系统》多级页表详解)补充)
  5. Spring AOP源码解析(一)——核心概念
  6. 在台湾当程序员是一种什么样的体验?
  7. 字母e和i如何发音?
  8. linux procs单位m,Linux
  9. 在XCode工程中创建bundle文件
  10. 告知书页面html样式,纯CSS实现的三种通知栏滚动效果
  11. 【小程序-开篇】国内IT技术圈的技能树貌似点歪了?
  12. 小王子星球调色Web版 - the little prince
  13. 17款现代风格的免费英文字体,分享给设计师们
  14. 历年诺贝尔物理学奖获得者名单及研究领域(1901-2016)
  15. C++【C++11】
  16. 年仅28岁的程序员郭宇,宣布从字节跳动辞职,实现财富自由!
  17. linux查看是centos几版本
  18. 一种低成本的室内定位UWB技术方案
  19. 幼教艺术活动设计《美丽的雪花》
  20. Scrapy爬取知乎用户信息(代理池,MongoDB,非分布式)

热门文章

  1. 网络安全小白自学之路,别拜师了,求人不如求己
  2. win10快捷键总结
  3. 4年功能测试月薪9.5K,4个月时间进阶自动化,跳槽涨薪4k后我的路还很长...
  4. keil编译出现:error: declaration may not appear after executable statement in block
  5. Dubbo学习记录(十五) - 服务调用【一】-之 服务端Netty的hander包装过程与 服务端线程模型
  6. SpringCloud 各个微服务之间会话共享以及Feign调用会话共享
  7. SQL案例学习-微信好友关系
  8. 货币转换python代码_零基础python作业--货币兑换的服务系统
  9. Chrome插件yyds
  10. 【说明书】核酸测试盒使用说明