C语言学习
文章平均质量分 60
C语言强化学习
秋到亦天凉
双非研~目前复习C++后端开发ing
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
为什么定义float a=0.1,你的0.1显示的是double,而定义 float a=0.1f,你的0.1显示float
将浮点常量默认视为 double 类型可以提供更高的精度和范围,并且在许多应用中更为安全和高效。如果需要 float 类型,可以使用 f 后缀进行明确指定。后缀 f 的作用:如果你使用 float ft = 12.23f;,编译器知道 12.23f 是 float 类型的常量,因此不会进行任何转换,直接将其赋值给 ft。C 语言允许将 double 转换为 float,但这会发生隐式转换,可能导致精度损失。常量类型:当你写 float ft = 12.23;时,ft 变量的类型是 float。原创 2024-11-04 16:02:38 · 357 阅读 · 0 评论 -
有符号数和无符号数
当 int i = -4 时,将 i(有符号整数)与 sizeof(int)(无符号整数)进行比较会发生类型转换。由于 i 是负数,比较时会先将 i 转换为无符号类型,这样一来,-4 会被视为一个非常大的无符号数(在大多数平台上,相当于 4294967292),这显然大于 4,所以条件 i < sizeof(int) 为假,导致循环体根本没有执行。因此,在你的代码中,sizeof(int) 返回一个无符号的整数 4。第三行, 无法输出任何数字。原创 2024-11-04 16:58:40 · 296 阅读 · 0 评论 -
在%取余数的时候,余数的符号是和被除数一致的!!!
原创 2024-11-04 22:33:50 · 195 阅读 · 0 评论 -
2024.11.7总结 C语言的陷阱到C++的改进
比如说你会发现,首先第一行本来应该是不能通过的,但是没用那个{}去定义,然后用=定义的话,不会有那么多格式限制,字符依然会被存储,但是会截断,abc只显示c.第五行同样如此 string(1,a) 表示 如果使用两个参数,第一个是数量(size_t),第二个是一个字符(char)。但是很明显,可以观察到,你存储 ‘yes’,也是会截断。这是注意的第一点!!原创 2024-11-07 19:27:15 · 367 阅读 · 0 评论 -
C++复习 --》 引用
其实我自己的认为是,引用就是给变量起了一个别名,一个外号。它最重要的用处的 传参!!!!原创 2024-11-11 16:58:49 · 215 阅读 · 0 评论 -
C语言复习 结构体 和 联合体
在C/C++中,内存对齐是指编译器在为结构体中的每个成员分配内存时,会按照一定的规则对内存地址进行对齐,以提高内存访问效率。内存对齐可以减少CPU访问内存的次数,从而提升性能,但会造成一定的内存浪费。例如,在GCC编译器中,可以使用__attribute__((packed))来让结构体不进行内存对齐,编译器将按实际需要的大小来分配内存,不添加填充字节。所以,无论你这个结构体的三个变量的顺序是什么样子,最后的结构体的大小是一样的。在某些情况下,我们可以通过编译器的指令或属性来。改变结构体的内存对齐。原创 2024-11-11 18:23:00 · 286 阅读 · 0 评论 -
C语言复习(五)—— 运算符
一个函数的构成:返回类型 函数名(形参列表)原创 2023-11-02 11:32:06 · 173 阅读 · 0 评论 -
程序执行时的内存分配情况总结!
管理方式不同:栈是由编译器自动申请和释放空间,堆是需要程序员手动申请和释放;空间大小不同:栈的空间是有限的,在64位平台下,VC6下默认为2M,堆最大可以到4G;能否产生碎片:栈和数据结构中的栈原理相同,在弹出一个元素之前,上一个已经弹出了,不会产生碎片,如果不停地调用malloc、free对造成内存碎片很多;生长方向不同:堆生长方向是向上的,也就是向着内存地址增加的方向,栈刚好相反,向着内存减小的方向生长。分配方式不同:堆都是动态分配的,没有静态分配的堆。栈有静态分配和动态分配。原创 2023-10-31 19:50:18 · 542 阅读 · 0 评论 -
程序编译链接的过程详解
即程序员通过编辑器创建并保存的文本文件。源程序实际上就是一个由0和1组成的位(又称比特)序列,8个位被组织成一组,称为字节。每个字节表示程序中的某些文本字符。像 .c 这样只由ASCII字符构成的文本称为文本文件,其他所有的文件都称为二进制文件。为了在系统上运行这个程序,每条C语句都必须被其他程序转化为一系列的低级机器语言指令,然后这些指令按照一种为可执行目标程序的格式打好包,并以二进制磁盘文件的形式存放起来。目标程序也称为可执行目标文件。原创 2023-10-31 17:25:00 · 450 阅读 · 0 评论 -
C语言练习题
【代码】C语言练习题。原创 2023-10-13 12:51:47 · 135 阅读 · 0 评论 -
C语言复习(二)——什么是C语言!!
C 语言是一种结构化语言,它有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试,且 C语言的处理和表现能力都非常的强大,依靠非常全面的运算符和多样的数据类型,可以轻易完成各种数据结构的构建,通过指针类型更可对内存直接寻址以及对硬件进行直接操作,因此既能够用于开发系统程序,也可用于开发应用软件。1982 年成立 C 标准委员会,建立 C 语言的标准。1989 年,ANSI 发布了第一个完整的 C 语言标准——ANSIX3.159—1989,简称“C89”。原创 2023-10-24 11:15:28 · 151 阅读 · 0 评论 -
C语言复习(四)——变量、常量、标识符
变量是以某标识符为名字,其数值可以改变(可读,可写)。常量其值不可改变(只可读,不可写)。什么是声明,什么是定义?什么是定义:所谓的定义就是,这个名字就是我们经常所说的变量名。但注意,这个名字一旦和这块内存匹配起来,它们就,并且这块内存的位置也不能被改变。,如果定义多次,编译器会提示你重复定义同一个变量或对象。什么是声明:有两重含义,如下:第一重含义:告诉编译器,这个名字已经匹配到一块内存上了。第二重含义:告诉编译器,我这个名字我先预定了,别的地方再也不能用它来作为变量名。原创 2023-10-24 11:17:32 · 459 阅读 · 0 评论 -
C语言复习(三)——数据类型
注意:long double 编译器不同所占字节数不同!原创 2023-10-24 11:16:24 · 93 阅读 · 0 评论 -
C语言复习(一)计算机基础知识
C语言基础概述!!原创 2023-10-24 09:33:47 · 96 阅读 · 0 评论
分享