C/C++实践笔记 013关于函数

1.整数逆转

num %10,取出个位

num / 10 % 10 ,取出十位

个位乘10+十位

循环趋于终止条件放在参数调用,多一个参数保存中间结果,newnum保存中间结果

2.关于goto

除非跳出多个循环用到goto,或者远程注入技术
原则上尽量少用goto,
现在正规的软件开发,都要求不用goto,需要团队协作,为了代码的逻辑严密以及清晰

3.简单函数以及应用

main函数是C程序的入口点,有且仅有一个main函数

getchar(); //等待你输入一个字符的作用

函数的别称是方法,函数也就是完成某一特定功能的模块

函数的执行流程
函数调用必须等待函数执行完成才会执行下一步

带参数的函数

函数名在VS里可以参杂中文

%i等价于%d,打印有符号十进制数据

函数的返回值就是函数的输出,函数的结果

main函数可以没有返回值,无论类型是int还是void

C非main函数如果不是void,会有一个警告,如果是CPP会是一个错误

return后面得语句不会再被执行,
main函数的return语句就是退出,没有return,main函数执行完所有语句就会退出

sleep在windows.h里

4.函数的形参与实参

函数调用的时候,形参分配内存,新建一个变量,存储传递过来的实参

函数调用之前,形式参数,也就是函数定时时()里的参数,值都不确定
不确定的值,不会分配内存,只有调用函数的时候,才会分配内存新建一个变量
接受实际参数的值,当函数调用结束的时候,形参占据的内存会被回收。

实际参数是函数调用的时候,函数传递的确切值就是实际参数,
实际参数可以是常量,变量或者表达式。

形参与实参内存地址不一样,占用不同的内存空间

形式参数与实际参数的类型

会自动完成数据类型的转换

调用函数的时候,尽量类型要匹配,否则会出现误差或错误

5.全局变量与局部变量

局部变量调用完成以后会被回收,局部变量是为块语句服务的

函数内部定义的变量,还有函数的参数,都是局部变量

全局变量:
全局变量不属于任何一个函数,可以被任何一个函数调用

全局变量的生存期就是程序的生命期,全局变量会一直占内存,而局部变量用完就扔

全局变量可以用于函数的通信

同名的情况下,局部变量会屏蔽全局变量

C++可以用::访问全局变量,C语言不可以

同一个块语句下变量不可以重名,可以再装一个块语句

6.输入输出函数

putchar按字符打印
getchar(); //等待你输入一个字符,返回值就是你输入的字符

C语言从上往下开始编译,所以上面如果没有函数的定义,或者声明就无法找到函数,无法调用

函数的实体只能有一个
函数的声明,只是说明函数的存在,所以可以有多个

7.字符串输入输出

gets 输入一个字符串到字符串变量

函数是模块化编程的基础

函数解决代码重用的问题

C++属于严格的编程语言,函数的声明必须在调用之前

VS2013的编译器,默认的配置了静态库lib的路径

C语言编译比较宽泛,有库的路径,可以自动定位,不需要函数声明

C++必须有函数声明,头文件,库文件

std标准库,C语言标准跨平台

abort(); 处理程序的异常

函数的块语句不允许省略

函数体内部变量不可以与参数同名

函数的块语句不可以省略

 

函数可以把相对独立的某个功能抽象出来,使之成为程序中的一个独立实体。可以在同一个程序或其他程序中多次重复使用。

8.库函数:
由C语言系统提供;
用户无须定义,也不必在程序中作类型说明;
只需在程序前包含有该函数定义的头文件;
自定义函数:
用户在程序中根据需要而编写的函数;

 

posted @   千年风雅丶  阅读(154)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示