C语言
文章平均质量分 71
本人学习C语言的相关总结
ProgramStack
研究方向:机器学习、深度学习、AIOT
展开
-
C语言从入门到精通第20天(结构体的使用)
通过前面的学习,我们可以用一个数据类型加变量表示一个属性,但是当表示多个属性时,一个基本数据类型就不能表示了,此时就可以用到结构体来将多个属性进行存储。struct 结构体名称 {成员变量 1;成员变量 2;成员变量 3;. . . 成员变量n;示例:用结构体表示学生的名字、性别、年龄、电话。char sex;int age;注意: 结构体也是一种数据类型,并且在结构体中不能定义函数。struct 结构体名称 变量名;可通过将结构体和变量名进行联用,相当于定义一个数据类型 变量名。原创 2023-05-27 11:36:27 · 937 阅读 · 0 评论 -
C语言从入门到精通第19天(malloc和realloc函数进行内存分配)
在我们需要存储多个数据时,我们就会想到使用数据,在我们知道数据的多少时,可以自己定义数据的长度,但是我们要在进行数据的添加时,此时数组的长度已经固定了,就不能再进行添加了。当分配的空间不够时,可以使用realloc函数进行内存空间的分配,在堆上分配一块size所指定的新的内存空间,空间大小单位字节,并且还会将ptr所指向的空间中的内容拷贝到新的内存空间中,最后返回新的内存空间的首地址。)类型的指针),这个指针指向被分配的内存空间的首地址,并且申请的内存空间在**”堆“**上。原创 2023-05-14 16:05:00 · 412 阅读 · 0 评论 -
C语言从入门到精通第18天(指针和函数的联用)
这里可以把他想象成指针数组,将所有的指针变量(一级指针)放在一个数组里面,然后再将数组中的指针变量依次赋值给另一个指针变量(二级指针)。:如果在函数的形参为指针时,我们一般会先对指针的值进行判断,判断指针的值是否为NULL。用一个指针变量保存一个一级指针变量的地址,这个指针我们称为。,这是我们可以将函数中的参数类型设置为。但是在实际使用中我们通常用。当我们调用函数时需要传递。数据类型 **变量名。原创 2023-05-14 14:17:46 · 313 阅读 · 0 评论 -
C语言从入门到精通第17天(指针和数组联用)
即数组名表示数组的首地址,因此数组名也是一种指针。通过前面我们知道了数组可以通过下标进行访问,这里我们还可以通过数组名+偏移量进行数组中元素的访问。一个变量有一个地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,他们都有相应的地址。所谓的数组的指针是指。指针数组就是存放指针的数组,本质是数组,数组中的。*(数组名+偏移量)原创 2023-05-02 17:44:58 · 459 阅读 · 0 评论 -
C语言从入门到精通第16天(指针的定义与基本使用)
在使用指针之前我们需要对指针进行初步的了解,首先我们要知道什么是指针?通过前面的学习我们已经知道了内存的存储方式,他是通过一个字节一个字节的连续存储单位进行内存的存储,每一个字节我们称为一个内存单元。为了能够正确的访问这些内存单元,就必须为每个内存单元编上一个号,根据一个内存单元的编号即可准确的找到该内存单元,以及提取该内存单元存储的数据。这里的内存单元的编号就叫做地址,而这个地址就是我们所说的指针。原创 2023-04-30 21:07:51 · 563 阅读 · 0 评论 -
C语言从入门到精通第15天(C语言预处理)
在前面我们已经对C语言的基础语法知识有所了解了,每次进行程序的编写之前,我们会使用#include命令去导入我们的库函数,而这种以号开头的命令称为预处理命令。C语言提供了多种预处理功能,如宏定义、文件包含、条件编译等。合理地使用预处理功能编写地程序便于阅读、修改、调试、移植,也有利于模块化程序设计。这个预处理命令时怎样去运行的呢?首先我们要知道的是我们编译器中的文件中的内容。这里显示了我们用的输出输出函数库,当我们导入这个库函数时,程序会自动的进行预处理,将我们这个stdio.h文件。原创 2023-04-26 15:02:00 · 381 阅读 · 0 评论 -
C语言从入门到精通第14天(局部变量和全局变量)
此时我们可以发现两次输出的数字都是6 这时为什么呢?因为经历一次循环的时候随着。的结束局部变量的值也就结束了,所以不会进行叠加。全局变量是定义在函数外部的变量。简单来说,在C语言中的局部变量就是定义在。中的变量,他的作用域也在。内,他的生命周期随着。原创 2023-04-26 09:36:01 · 73 阅读 · 0 评论 -
C语言从入门到精通第13天(函数的调用)
函数在定义完以后,如果不被调用时不会被执行到的;在程序中main函数是主函数,是会被自动调用,C程序有且只有一个main函数。原创 2023-04-26 09:04:24 · 848 阅读 · 0 评论 -
C语言从入门到精通第12天(函数的定义)
语法:类型标识符 函数名(形参列表)函数体类型标识符:表示函数返回值的类型,支持所有的C语言数据类型。函数名:有用户自定义的标识符形参列表:函数用来接收用户所传递的数据的参数,参数可以没有或一个,也可以是多个。函数体:实现函数功能的代码块。原创 2023-04-25 11:08:34 · 357 阅读 · 0 评论 -
C语言从入门到精通第11天(数组的基本操作)
定义一个数组时,需要进行初始化的操作,如果不进行初始化,则数组的内容为随机值。在C语言中,数组属于构造数据类型,一个数组可以分解为多个数组数组元素,这些数组的元素可以是基本数据类型或构造数据类型。二维数组的初始化跟一维数组的初始化相差不大,并且他的存储方式跟一维数组的存储方式是一样的,他的赋值方法也有逐个赋值和初始化赋值。他的取值方式跟一维数组的操作方式实际上是差不多的,也是超出了数组的长度,程序不会报错,但是返回的值是未知的。:可以表示为一个3行4列的二维数组,数组中的元素类型为int类型。原创 2023-04-24 23:26:25 · 1610 阅读 · 0 评论 -
C语言从入门到精通第10天(break和continue的使用)
break和continue是两种控制流程的语句,他们只能在循环中被使用,用于控制循环的执行。如果在非循环中被使用了则会导致语法的错误。原创 2023-04-24 12:10:26 · 371 阅读 · 0 评论 -
C语言从入门到精通第9天(循环结构的使用)
循环结构可以重复的执行一段代码块,在C语言中提供了三种不同类型的循环结构:。语法:如果表达式为真则执行结构体中的语句,直到表达式为假才停止执行。代码如下:while语句执行一次,变量便进行自增,直到不满足循环条件时停止执行。语法:这跟while的区别是不管表达式为真还是为假,循环都会先执行一次语句,然后再进行表达式的判定。如果为真继续执行,如果为假则停止执行。代码如下:for语句语法:其中为常量表达式;为条件表达式;用于结束循环。他的执行逻辑为先求解表达式1,然后判断表达式2的真假,如果为真则执行语句原创 2023-04-24 11:25:57 · 289 阅读 · 0 评论 -
C语言从入门到精通第8天(分支结构if、else、switch的使用)
根据表达式的值,逐个比较常量表达式,如果表达式的值等于常量表达式的值时,则执行相应常量表达式后的语句。如果表达式的值与所有常量表达式的值都不相等,则执行default后面的语句。如果表达式1为真,则执行语句1;依次进行判断,直到执行到为真的表达式,如果都为假,则执行else中的语句。如果表达式1为真,则再次进行判断,如果表达式2为真则执行语句1;如果表达式2为假,则执行语句2;如果表达式1为假,则执行语句3。如果表达式为真吗,则执行语句1,如果表达式为假,则执行语句2。case 常量表达式1:语句1;原创 2023-04-22 11:11:04 · 525 阅读 · 0 评论 -
C语言从入门到精通第7天(scanf、printf、getchar函数的使用)
这时我们的getchar函数就该发挥作用,让getchar函数去捕获输入的这个回车字符,从而使他进行下一步的运行。在C语言中使用printf函数进行格式化的输出,它是一个可变的参数函数,参数的个数不定。我们发现只有两个函数进行输出,这是因为scanf是获取缓冲区中的字符,当我们多个scanf联用时就得特别的注意。有时候对于浮点型我们希望输出的格式保留小数位,或者输出的语句进行对其,这时候我们就得进行相应的格式变换。:表示输出位数的长度,不够的加空格,长的删掉。:表示对字符型的进行输出。原创 2023-04-21 12:20:05 · 414 阅读 · 0 评论 -
C语言从入门到精通学习第6天(位运算的基本操作)
程序中所有的数在计算内存中都是以二进制的形式存储的,位运算是指按二进制进行的运算,位运算的运算速度通常与加法运算相同(仍快于乘法运算),但通常功耗较小,因为资源使用比较小。通过子网掩码求IP地址的网络号通过异或对数据进行加密通过单片机、STM32等控制灯光、风扇等通过位运算判断数据的奇偶性任何二进制位的表示都从右侧(最低位)开始计数,向左进。例如:二进制值0001(十进制1)除第一位(即最右边)每位上都是0。原创 2023-04-17 20:36:40 · 341 阅读 · 0 评论 -
C语言的深度解析
C是一种通用的、过程式编程编程语言,支持结构化编程、词法作用域和递归,使用静态类型系统,并且广发用于系统软件与应用软件的开发。C语言具有高效、灵活、功能丰富、表达力强和较高的可移植性等特点,在程序设计中备受青睐,成为几十年来使用最为广泛的编程语言。目前,C语言编译器普遍存在不同的操作系统中,例如:Mocrosoft、Windows、macOS、Linux、Unix等。C语言的设计影响了众多后来的语言,如C++、Java、C#等。现在许多的软件都是由C语言或者其影响和派生的编程语言开发出来的。原创 2023-04-16 10:21:23 · 626 阅读 · 0 评论 -
C语言从入门到精通学习第5天(基本的运算符&表达式及运算的优先级)
在调试程序时,C语言为了形象地表达某两个值之间的关系,就用计算机中最简单的两个值0和1来描述,如果你在调试程序时输出结果为0,则表示你所判断的关系是不成立的,反之则表示成立!表示如果表达式1的结果为真,则整个表达式的结果为表达式2的结果,否则为表达3的结果。> 算术运算符 > 关系运算符 > && > || > 条件运算符 > 赋值运算符 > 逗号运算符。注意赋值运算符‘=’和关系运算符“==”的区别,条件判断式中用“==”。逗号运算符的结合性是“从左至右”:先计算表达式1,后计算表达式2。原创 2023-04-15 23:36:56 · 493 阅读 · 0 评论 -
C语言从入门到精通第4天(1~3天的扩展)
进制也就是进位制,是人们规定的一种进位方法。对于任何一种进制—X进制,就表示某一位置上。的数运算时是逢X进一位。十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以。char和unsigned char定义变量,使用 %c 输出。负数的反码:绝对值的原码取反。此类推,x进制就是逢x进位。原创 2023-04-14 22:11:13 · 341 阅读 · 0 评论 -
C语言从入门到精通第3天(标识符&变量&常量)
变量在内存中占据一定的存储单元(定义变量时通过栈分配内存),在该存储单元中存放着变量的值。标识符的长度可以是一个或多个字符,最长不允许超过32个字符,为了提高程序的可读性,可采用具有一定实际含义的单词、单词缩写、组合单词作为标识符,尽量避免使用中文的拼音。当我们使用C语言进行编译时,某些标识符会被用来表示特殊的含义或作用并且不能用作他用,我们就称这些标识符为关键字。C语言中,由整型常量、实型常量、字符串常量、字符常量、转义字符、符号常量等不同类型的常量。必须是有效的C语言的数据类型,如。原创 2023-04-12 21:14:20 · 960 阅读 · 0 评论 -
C语言从入门到精通第2天(深度解析C语言数据类型及取值范围)
C语言的变量有着不同的数据类型,每种数据类型的取值空间都是不同的,因此,不同数据类型的变量,其取值空间也不同。在C语言程序中,各种类型的变量大多数是以十进制的形式来描述的,但实际上这些变量在计算机中是以二进制的形式进行存储的,C语言允许对二进制直接进行位操作来完成特殊的要求。C语言中的一位(bit,又名“比特”,简写b)能存储一个二进制数字(0或者1),而一字节(Byte,简写B)能存储8位(bit)。数据存储是以“字节”(Byte)为单位,而数据传输大多是以"比特"(bit)为单位。原创 2023-04-08 22:16:03 · 1292 阅读 · 0 评论 -
C语言从入门到精通第1天(程序结构和执行过程)
return 0 }这里的目的是输出hello world,那么我们要知道这个语句是怎么用C语言进行输出的。#include表示文件包含命令。其作用就是将系统目录下的头文件stdio.h包含到本程序中,成为程序的一部分。因为这里stdio.h是系统提供的,所以用尖括号<>来标定,其扩展名为 .h。也称头文件或首部文件。竟然可以引用系统文件,那么我们可不可以引用自己写的文件呢?答案是肯定的。如果我们自己写的文件跟要写的程序在同一个目录下,则直接使用#include"自己写的文件"原创 2023-04-03 20:27:56 · 257 阅读 · 0 评论 -
C语言从入门到精通
1977年,Dennis M.Ritchie发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。1978年,Brian W.Kernighian和Dennis M.Retchie合作出版了著名的。1983年,美国国家标准协会ANSI在此基础上制定了一个C语言标准,我们通常称为。的ALGOL60报告发表。在学习C语言之前我们有必要了解C语言的发展历程,C语言的前身是。,从而使C语言成为世界上应用最为广泛的高级程序设计语言。在B语言的基础上设计出了一种新的语言——💻驱动程序开发工程师。原创 2023-03-24 17:46:23 · 284 阅读 · 0 评论 -
CLion安装(保姆级教程)
在安装之前我们首先要知道CLion给我们提供的只是一个可视化界面方便我们编写程序,并不具有编译和调试的功能,最终的编译与调试还得需要我们的MinGW编译器。Jetbrains旗下的产品,主要用来开发C/C++原创 2023-03-18 18:40:02 · 2075 阅读 · 0 评论