C语言学习
文章平均质量分 80
weixin_45743453
这个作者很懒,什么都没留下…
展开
-
C++的内存管理方式new/delete
new/delete和malloc/free不要混着用,一定要匹配new和delete会调用构造函数和析构函数new失败之后会抛异常delete和delete[]也是不一样的,如果new的时候使用的是new[] 那么delete就要使用delete[],如果使用delete就只会调用一次析构函数从而导致错误,即便是new[1],也要使用delete[],而不是delete如果一个自定义类型的类中没有默认构造函数,那么使用new的时候就会报错,除非在使用new的时候就给初始值,这也是可以的。原创 2023-02-10 17:23:35 · 140 阅读 · 1 评论 -
C/C++的内存分布
注意字符串数组和常量字符串的区别栈又叫堆栈–非静态局部变量/函数参数/返回值等等,栈是向下增长的内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。用户可使用系统接口创建共享共享内存,做进程间通信堆用于程序运行时动态内存分配,堆是可以上增长的数据段–存储全局数据和静态数据代码段–可执行的代码/只读常量。原创 2023-02-10 15:25:06 · 44 阅读 · 0 评论 -
详解C语言中的移位操作符(顺带复习原码反码补码)
对于左移, 不论正负,高位舍弃,低位统一补0对于右移,正、负整数的低位处理规则相同,但是正数的高位补0,负数的高位补1在左移、右移得到结果之后,如果符号位是0,说明是正数,那么结果就是我们要求的值,如果最高位是1,说明是负数,我们还需要求得到结果的原码,原码对应的值才是我们要求的值右移运算是将一个二进制位的操作数按指定移动的位数向右移动,移出位被丢弃,左边移出的空位一律补0,或者补符号位,这由不同的机器而定,我们讨论的是补符号位对于移动的位数 我们都使用正数,不要使用负数。原创 2023-02-07 12:53:19 · 724 阅读 · 4 评论 -
C语言学习——循环语句之while、for、do...while
循环语句 主要包括while循环 for循环和do…while()循环。原创 2023-01-09 10:19:42 · 560 阅读 · 0 评论 -
C语言学习——分支语句之switch语句
C语言是结构化的程序设计语言主要包含三个结构 也就是顺序结构、选择结构、循环结构C语言中的语句可以分为以下五类1.表达式语句2.函数调用语句3. 控制语句4. 复合语句5. 空语句本篇文章主要介绍控制语句控制语句用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构、选择结构、循环结构),它们由特定的语句定义符组成,C语言有九种控制语句条件判断语句也叫分支语句:if语句、switch语句;循环执行语句:do while语句、while语句、for语句。原创 2023-01-08 11:01:41 · 641 阅读 · 1 评论 -
C语言学习——分支语句之if语句
C语言是结构化的程序设计语言主要包含三个结构 也就是顺序结构、选择结构、循环结构C语言中的语句可以分为以下五类1.表达式语句2.函数调用语句3. 控制语句4. 复合语句5. 空语句本篇文章主要介绍控制语句控制语句用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构、选择结构、循环结构),它们由特定的语句定义符组成,C语言有九种控制语句条件判断语句也叫分支语句:if语句、switch语句;循环执行语句:do while语句、while语句、for语句。原创 2023-01-08 10:25:40 · 916 阅读 · 0 评论 -
c语言学习———关键字和结构体
C语言中常见的关键字和初识结构体autotypedef类型重命名static静态变量static修饰函数宏二.结构体结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型。比如描述学生,学生包含: 名字+年龄+性别+学号 这几项信息。这里只能使用结构体来描述了。原创 2022-12-07 22:00:09 · 97 阅读 · 0 评论 -
一篇文章带你了解C语言的指针
内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址。内存划分的取余大致可以分为 栈区、堆区、静态区变量是创建内存中的(在内存中分配空间的),每个内存单元都有地址,所以变量也是有地址的内存变量的编号就是地址 地址又叫做指针编号 == 地址 == 指针1.个内存单元多大比较合适?一个字节地址的产生:32位机器原创 2022-12-07 21:38:21 · 304 阅读 · 0 评论 -
C语言学习——初识C语言(2)
C语言中的常量和变量的定义的形式有所差异。C语言中的常量分为以下以下几种:例如2.const 修饰的常变量为什么叫常变量的,因为它具有常量的属性 不可被修改但是!!它本质还是一个变量所以!!num虽然被const修饰 具有了常属性 不能被修改 但本质上还是变量 不能放在数组的[]中但是 这个代码在支持C99的编译器上是可以编译的只是我们的VS不支持c99中的变量数组C99中引入了变长数组的概念:变长数组的大小是可以使用变量来指定的,但是数据不能初始化Linux系统中的gcc原创 2022-12-03 17:14:21 · 326 阅读 · 0 评论 -
C语言学习——初识C语言(1)
我们知道,计算机最底层是各种硬件,硬件之上是操作系统,想让硬件工作就需要操作系统,而操作系统就是通过调用驱动层和硬件交互。在操作系统之上我们可以安装很多应用软件(也叫上层软件),在操作系统之下一般叫做底层软件,c语言擅长的就是底层软件的开发,但这并不代表它不能进行上层开发。c语言在嵌入式,单片机开发中用的很多,进来两三年物联网的兴起又让c语言迎来了一次春天。以下是对C语言的一些简单介绍C语言是一门通用计算机编程语言,广泛应用于底层开发。原创 2022-11-30 22:41:10 · 599 阅读 · 1 评论 -
C语言学习——与文件操作相关函数fread和fwrite
与文件操作相关的二进制读写函数fread和fwrite原创 2022-11-30 23:50:02 · 631 阅读 · 0 评论