正文开始
递归是什么?
递归是学习 C 语言函数绕不开的一个话题,那什么是递归呢?
递归其实是一种解决问题的方法,在 C 语言中,递归就是 函数自己调用自己 。
写一个史上最简单的 C 语言递归代码:(>这是一个错误的示范,会导致死循环,导致栈溢出。)
1234567#include <stdio.h>int main(){ printf("hehe\n"); main();//main函数中又调用了main函数 return 0;}
运行结果:
12345678910hehehehehehehehehehehehehehe * * * //死循环打印hehe
这个代码的作用是什么呢?
它会导致死循环,导致栈溢出。
它没有任何意义,只是打印”hehe”
上述就是一个简单的递归程序,只不过上面的递归只是为了演示递归的基本形式,不是为了解决问题,代码最终也会陷入死递归,导致栈溢出(Stackoverflow)。
所以,递归的基本形式是:每一次函数调用,都会在栈上开辟一块内存,当递归层数太多时,会导致栈 ...
C语言程序设计
未读
正文开始
C语言是什么?人和人交流使用的是自然语言,如:汉语、英语、日语
那人和计算机是怎么交流的呢?使用 计算机语言 。
目前已知已经有上千种计算机语言,人们是通过计算机语言写的程序,给计算机下达指令,让计算机工作的。
C语言就是众多计算机语言中的一种,当然C++/Java/Go/Python都是计算机语言。
C语言的历史和辉煌C语言最初是作为Unix系统的开发工具而发明的。
https://www.tiobe.com/tiobe-index/
编译器的选择VS 2022编译和链接C语言是一⻔ 编译型 计算机语言,C语言源代码都是文本文件,文本文件本身无法执行,必须通过 编译器 翻译和 链接器 的链接,生成 二进制的可执行文件 ,可执行文件才能执行。
C语言代码是放在 **.c ***为后缀的文件中的,要得到最终运行的可执行程序,中间要经过 编译 和 *链接 2 个过程。
VS2022项目中的.c文件
.c文件的展示
C语言代码
一个工程一般都会有多个源文件组成,如下图所示,演示了源程序经过编译器和链接器处理的过程。 注 ...