首页 > 其他分享 >新手专科准大一学习c语言的第10天之strcpy、memset、自定义函数的学习与应用

新手专科准大一学习c语言的第10天之strcpy、memset、自定义函数的学习与应用

时间:2024-08-26 22:23:59浏览次数:8  
标签:10 函数 自定义 int memset 字符串 include

strcpy

strcpy 是 C 语言标准库中的一个字符串操作函数,用于将源字符串复制到目标字符串中。

#include <stdio.h>
#include <string.h>

int main()
{
    char arr1[50];               // 确保目标数组足够大,能够容纳源字符串
    char arr2[] = "hello world"; // 源字符串
    strcpy(arr1, arr2);          // 目标地址在前 源字符串在后
    printf("源字符%s,目标字符%s", arr2, arr1);
    return 0;
}

参数说明

arr1: 目标字符串的指针,必须有足够的空间来存放源字符串和终止符 \0

arr2: 源字符串的指针。

返回值

返回目标字符串 arr1 的指针。

memset

memset 是 C 语言标准库中的一个函数,用于将内存块中的每个字节都设置为指定的值。

#include <stdio.h>
#include <string.h>

int main()
{
    char arr[20] = "hello world";
    memset(arr, '#', 5); // 使用 memset 将字符串的前 5 个字符设置为 '#'
    printf("修改后的字符串%s", arr);
    return 0;
}

参数说明

arr: 指向要填充的内存块的指针。

#: 要设置的值(作为无符号字符进行转换),它会被填充到内存块中。

5: 要设置的字节数。

返回值

返回指向内存块的指针 arr。

注意事项

memset 通常用于初始化数组或结构体,或者重置内存区域。

由于 memset 是基于字节操作的,因此可以用来设置任何类型的数据,而不仅仅是字符串。

自定义函数

在 C 语言中,自定义函数可以让你将代码组织成更小的可重用部分,从而提高代码的可读性和可维护性。自定义函数的基本结构包括函数的声明、定义和调用。

函数的创建

#include <stdio.h>

int C_ompare(int x, int y) // 函数的创建
{
    return (x > y ? x : y); // 三目操作符
}

调用

#include <stdio.h>

int C_ompare(int x, int y) // 函数的创建
{
    return (x > y ? x : y); // 三目操作符
}
int main()
{
    int i = 1;
    int a = 2;
    int ret = C_ompare(i, a); // 函数的调用
    printf("%d", ret);
    return 0;
}

自定义函数的结构

  1. 函数声明(可选,但建议放在代码的开头或头文件中)

    • 告诉编译器函数的名称、返回类型、参数类型等信息。
    • 形式为:返回类型 函数名(参数类型 参数名, ...);
  2. 函数定义

    • 包含函数的实际代码,描述函数的行为。
    • 形式为:返回类型 函数名(参数类型 参数名, ...) { /* 函数体 */ }
  3. 函数调用

    • 在需要的地方调用函数,并传递必要的参数。

总结

通过自定义函数,可以有效地组织代码,并使程序更易于理解和维护。

标签:10,函数,自定义,int,memset,字符串,include
From: https://blog.csdn.net/Q3470616082/article/details/141572356

相关文章

  • 【ACM出版,快录用】2024年智能医疗与可穿戴智能设备国际学术会议(SHWID 2024, 10月18-2
    2024年智能医疗与可穿戴智能设备国际学术会议(SHWID2024)将于2024年10月18-20日在广东广州举行。本次会议主要围绕“智能医疗与可穿戴智能设备”的最新研究展开,旨在荟聚世界各地该领域的专家、学者、研究人员及相关从业人员,分享研究成果,探索热点问题,交流新的经验和技术。......
  • 一次性下发100w的优惠券/短信/二维码,兼顾线程池参数可配置 在Spring 中 ThreadPoolTas
    一次性下发100w的优惠券/短信/二维码,兼顾线程池参数可配置在Spring中ThreadPoolTaskExecutor的使用1、场景需求分析针对6.18,11.11这种场景,平台一次性发布500w张优惠券,或者对于锁单用户统一发下100w张确认信息,同时我们平时有抢购茅台的场景,京东一次性发布10w个验证码,主要是针......
  • 企事业单位数据资料防外泄|10个技巧保护数据安全!
    企事业单位的数据资料安全面临着前所未有的挑战。敏感信息的泄露不仅可能导致经济损失,还可能损害企业声誉和客户信任。为了有效防止数据外泄,保护企业的核心资产,以下是十个关键技巧,帮助企事业单位筑牢数据安全防线。注意:以下措施技术支撑需要用到安企神。1.数据加密数据......
  • 1047 Student List for Course【超简单思路,map,vector,对于超时问题】
    ZhejiangUniversityhas40,000studentsandprovides2,500courses.Nowgiventheregisteredcourselistofeachstudent,youaresupposedtooutputthestudentnamelistsofallthecourses.InputSpecification:Eachinputfilecontainsonetestcase.Fo......
  • 海螺影视主题模板M3.1全解密版本 多功能苹果CMSv10自适应主题
    海螺影视主题模板M3.1全解密版本 多功能苹果CMSv10自适应主题海螺影视主题模板M3.1全解密版本多功能苹果CMSv10自适应主题源码介绍海螺影视主题模板M3.1是一款专为苹果CMSv10设计的自适应主题模板。该模板旨在提供一个美观、易用且功能丰富的界面,以满足影视网站的需求。模......
  • 重磅发布:最新AI应用榜全球Top100!你用过哪几款?
    8月22日,硅谷知名风投A16Z(AndreessenHorowitz),发布了最新(第3期)的全球Top100生成式AI消费者应用榜单,涵盖了网页端AI应用Top50和移动端AI应用Top50。网页端Top50移动端Top50通过对比半年前的榜单,有几个值得关注的亮点:1.与半年前相比,榜单中有30%的新面孔,显示出AI应用的......
  • 【北京迅为】itop-龙芯2k1000 sylixos 嵌入式实时系统烧写手册-第一章与第二章 详细步
      第一章准备与说明1.1文档说明l该文档适用于龙芯2K1000开发板;l用于实现无根文件系统的SylixOS硬盘固化自启动;l包含根文件系统的导出说明。1.2准备工作l1台有以太网口的电脑,1条网线、1条串口线;lTFTP功能:电脑需要安装“RealEvo-IDE”或者“Tftp32”软件......
  • 学懂C++(四十四):C++ 自定义内存管理的深入解析:内存池与自定义分配器
    目录1.内存池(MemoryPool)概念模型特点核心点实现适用场景经典示例实现代码解析2.自定义分配器(CustomAllocators)概念模型特点核心点实现适用场景经典示例实现代码解析高级自定义分配器示例代码解析总结        C++作为一种高性能编程语言,在......
  • Vue-cil(脚手架,版本:2.6.10)的搭建过程(项目创建,组件路由)
    目录一.前端项目结构的对比  1.传统的前端项目结构  2.现在的前端项目结构 二.什么是vue-cil三.主要的功能四.需要的环境(前提)  1.Node.js  2.npm  3.使用HbuilderX快速搭建​五.常用命令六.创建项目的需要  1.创建组件      ......
  • 电脑文件加密方式推荐:整合了10个文件加密软件,亲测好用!
    在这个数据安全至关重要的时代,电脑文件加密已成为保护个人和企业数据的必备措施。无论是保护敏感的工作文档、私人照片,还是防止商业机密外泄,文件加密软件都可以有效地防止未经授权的访问。本文将为您推荐10款亲测好用的文件加密软件,帮助您更好地保护您的数据安全。1.安秉加......