
C程序设计
文章平均质量分 82
主要讲解C语言、算法、选择结构程序设计、循环结构程序设计、数组、用函数实现模块化程序设计、指针等知识内容。
厉昱辰
我是厉昱辰。一位热衷于技术探索和分享的开发者。精通C/C++,擅长单片机和Linux系统开发,对ARM架构和电路设计有深刻理解。曾作为阿里云乘风者计划项目负责人,AtomGit平台指导人,以及长沙开发者科技有限公司的专业讲师,我在技术领域积累了丰富的实践经验。在优快云社区,我以专家博主的身份分享见解,致力于与广大开发者共同成长。欢迎关注我的博客,一起探索技术的无限可能。
展开
-
【C程序设计】C函数指针与回调函数
你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做触发了回调关联的事件,店员给你打电话叫做调用回调函数,你到店里去取货叫做响应回调事件。函数指针变量可以作为某个函数的参数来使用的,回调函数就是一个通过函数指针调用的函数。函数定义了三个参数,其中第三个参数是函数的指针,通过该函数来设置数组的值。实例中我们定义了回调函数。原创 2024-01-07 15:03:37 · 506 阅读 · 1 评论 -
【C程序设计】C指针
通过指针,可以简化一些 C 编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。所有实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型,对应指针的值的类型都是一样的,都是一个代表内存地址的长的十六进制数。赋为 NULL 值的指针被称为。正如您所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可使用 & 运算符访问的地址,它表示了在内存中的一个地址。不同数据类型的指针之间唯一的不同是,指针所指向的变量或常量的数据类型不同。是指针的基类型,它必须是一个有效的 C 数据类型,原创 2024-01-07 14:47:40 · 936 阅读 · 0 评论 -
【C程序设计】C enum(枚举)
前面我们只是声明了枚举类型,接下来我们看看如何定义枚举变量。我们可以通过以下三种方式来定义枚举变量1、先定义枚举类型,再定义枚举变量enum DAY2、定义枚举类型的同时定义枚举变量enum DAY} day;3、省略枚举名称,直接定义枚举变量enum} day;原创 2024-01-06 12:05:01 · 682 阅读 · 0 评论 -
【C程序设计】C数组
C 语言支持数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。数组的声明并不是声明一个个单独的变量,比如 runoob0、runoob1、...、runoob99,而是声明一个数组变量,比如 runoob,然后使用 runoob[0]、runoob[1]、...、runoob[99] 来代表一个个单独的变量。所有的数组都是由连续的内存位置组成。最低的地址对应第一个元素,最高的地址对应最后一个元素。原创 2024-01-06 12:00:30 · 1292 阅读 · 0 评论 -
【C程序设计】C作用域
任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问。让我们来看看什么是变量、变量和参数。原创 2024-01-04 13:58:31 · 1296 阅读 · 0 评论 -
【C程序设计】C函数
C 语言中的函数定义的一般形式如下:在 C 语言中,函数由一个函数头和一个函数主体组成。一个函数可以返回一个值。是函数返回的值的数据类型。有些函数执行所需的操作而不返回值,在这种情况下,return_type 是关键字void。这是函数的实际名称。函数名和参数列表一起构成了函数签名。参数就像是占位符。当函数被调用时,您向参数传递一个值,这个值被称为实际参数。参数列表包括函数参数的类型、顺序、数量。参数是可选的,也就是说,函数可能不包含参数。函数主体包含一组定义函数执行任务的语句。原创 2024-01-03 21:32:31 · 960 阅读 · 0 评论 -
【C程序设计】C循环
有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。编程语言提供了更为复杂执行路径的多种控制结构。原创 2024-01-03 21:31:42 · 560 阅读 · 0 评论 -
【C程序设计】 C存储类
存储类定义 C 程序中变量/函数的存储位置、生命周期和作用域。这些说明符放置在它们所修饰的类型之前。原创 2024-01-03 21:28:35 · 1139 阅读 · 0 评论 -
【优快云新星计划】初阶牛C/C++赛道——顺序程序设计(C语句②)
分析 printf 函数的输出情况:先原样输出字符a=,然后按%f格式输出变量a的值,这时输出了“a=3.670000”共10个字符,然后遇到 t,输出位置就跳到下一个 Tab区。一个Tab区有8列,在输出“a=3.670000”后已进入第2个Tab区,今要求跳到下一个Tab区,就应该跳到第 3个 Ta区,即从17列开始的区。其中最基本的是赋值语句程序中的计算功能大部分是由赋值语句实现的,几乎每一个有实用价值的程序都包括赋值语句。在安排输出时,常用\t'来调整输出的位置,使输出的数据清晰、整齐、美观。原创 2023-07-16 23:05:54 · 454 阅读 · 1 评论 -
【优快云新星计划】初阶牛C/C++赛道——顺序程序设计(C语句)
也是一个语句,作用是完成x十y 的操作,它是合法的,但是并不把 x十y的和赋给另一变量,所以它并无实际意义。一个函数包含声明部分和执行部分,执行部分是由语句组成的,语句的作用是向计算机系统发出操作指令,要求执行相应的操作。C程序结构可以用下图表示。可以在复合语句中包含声明部分(如上面的第2行),C99允许将声明部分放在复合语句中的任何位置,但习惯上把它放在语句块开头位置。”是C语句,这两个语句是内嵌在if··else语句中的。上面9种语句表示形式中的()表示括号中是一个“判别条件”“...”表示内的语句。原创 2023-07-16 22:41:11 · 454 阅读 · 0 评论 -
【优快云新星计划】初阶牛C/C++赛道——顺序程序设计(运算符和表达式)
C语言规定了运算符的优先级(例如先乘除后加减),还规定了运算符的结合性在表达式求值时,先按运算符的优先级别顺序执行,如表达式 a-b* c,b的左侧为减号,右侧为乘号,而乘号优先级高于减号,因此,相当于a-(b*c)。C语言规定了各种运算符的结合方向(结合性),算术运算符的结合方向都是“自左至右”,即先左后右,因此b先与减号结合,执行ab的运算,然后再执行加的运算自左至右的结合方向”又称“左结合性”,即运算对象先与左面的运算符结合。++i,- -i(在使用i之前,先使i的值加(减)1)原创 2023-07-09 17:08:58 · 388 阅读 · 0 评论 -
【优快云新星计划】初阶牛C/C++赛道——顺序程序设计(数据的表现形式及其运算)
上表中倒数第2行是一个以八进制数表示的字符,例如'\101'代表八进制数101的ASCII字符即'A'(八进制数101相当于十进制数65,从ASCII表中可以看到ASCII码(十进制数)为65的字符是大写字母'A')。,用单撇号括起来的一个字符,如:'a','Z','3','?字符常量存储在计算机存储单元中时,并不是存储字符(如a,z,#等)本身,而是以其代码(一般采用ASCII代码)存储的,例如字符'a'的ASCII代码是97,因此,在存储单元中存放的是97(以二进制形式存放)。原创 2023-07-07 11:38:56 · 775 阅读 · 18 评论 -
【C程序设计】——程序=算法+数据结构
而且每次都要直接使用上一步骤的具体运算结果(如2,6,24等),也不方便,应当能找到一种通用的表示方法。由于数值运算往往有现成的模型,可以运用数值分析方法,因此对数值运算的算法的研究比较深入,算法比较成熟。从图中可以看出:“其他”这一部分,包括不能被4整除的年份,以及能被4整除,又能被100整除,但不能被400整除的那些年份(如1900年),它们都是非闰年。:若year能被4整除,不能被100整除,则输出year的值和“是闰年”。因此,上述算法不仅是正确的,而且是计算机能方便实现的较好的算法。原创 2023-05-19 20:41:04 · 4631 阅读 · 32 评论 -
【C程序设计】——最简单的C语言程序
其中第1行是程序运行后输出的结果,第2行是Visual C++ 6.0系统在输出完运行结果后自动输出的一行信息,告诉用户“如果想继续进行下一步,请按任意键”,当用户按任意键后,屏幕上不再显示运行结果,而返回程序窗口,以便进行下一步工作(如修改程序)。在使用函数库中的输入输出函数时,编译系统要求程序提供有关此函数的信息(例如对输入输出函数的声明和宏的定义、全局量的定义等),程序第1行“#include”的作用就是。,printf 是C编译系统提供的函数库中的输出函数。注释对运行不起作用。..原创 2023-05-16 16:27:30 · 19832 阅读 · 38 评论