![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 87
码农小张~
这个作者很懒,什么都没留下…
展开
-
程序环境和预处理
_FILE__ //进行编译的源文件__LINE__ //文件当前的行号__DATE__ //文件被编译的日期__TIME__ //文件被编译的时间__STDC__ //如果编译器遵循ANSI C,其值为1,否则未定义 (VS不支持)这些预定义符号都是语言内置的。语法:#define reg register //为 register这个关键字,创建一个简短的名字;) //用更形象的符号来替换一种实现。原创 2023-12-26 19:08:49 · 956 阅读 · 1 评论 -
C语言文件操作
磁盘上的文件是文件。但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)。程序文件:包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe)。数据文件:文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件。有时候我们会把信息输出到磁盘上,当需要的时候再从磁盘上把数据读取到内存中使用,这里处理的就是磁盘上文件。原创 2023-12-24 12:05:14 · 769 阅读 · 1 评论 -
柔性数组的使用以及优势
所以,如果我们把结构体的内存以及其成员要的内存一次性分配好 了,并返回给用户一个结构体指针,用户做一次free。如果我们的代码是在一个给别人用的函数中,你在里面做了二次内存分配,并把整个结构体返回给 用户。函数进行内存的动态分配,并且分配的内存应该大于结构的大 小,以适应柔性数组的预期大小。C99 中,结构中的最后一个元素允许是未知大小的数组,这就叫做『柔性数组』成员。输出的结果为4,因为结构大小不包括柔性数组的大小。返回的这种结构大小不包括柔性数组的内存。就可以把所有的内存也给释放掉。原创 2023-12-22 22:01:54 · 335 阅读 · 0 评论 -
动态内存管理
C语言提供了一个动态内存开辟的函数:原创 2023-12-22 19:51:59 · 830 阅读 · 0 评论 -
指针和数组笔试题解析
做题之前我们要首先了解1. 特殊情况一:sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小。2. 特殊情况二:&数组名,这里的数组名表示整个数组,取出的是整个数组的地址。3. 除此之外所有的数组名都表示首元素的地址。sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。原创 2023-12-18 15:55:06 · 901 阅读 · 0 评论 -
浮点型数据存储方式
浮点数存取规则总结如下:浮点数采用IEEE 754标准进行存储,分为单精度浮点数和双精度浮点数两种格式。单精度浮点数占用4个字节,双精度浮点数占用8个字节。浮点数采用二进制科学计数法表示,包括符号位、指数位和尾数位。浮点数的精度受限于尾数位的位数,单精度浮点数的尾数位有23位,双精度浮点数的尾数位有52位。浮点数的存储格式为符号位+指数位+尾数位,其中符号位表示正负号,指数位表示指数值,尾数位表示有效数字。原创 2023-12-12 21:57:20 · 715 阅读 · 0 评论 -
C语言中的基本类型以及数据在内存中的存储
计算机中的整数有三种2进制表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位。正数的原、反、补码都相同。负整数的三种表示方法各不相同。原码:直接将数值按照正负数的形式翻译成二进制就可以得到原码。反码:将原码的符号位不变,其他位依次按位取反就可以得到反码。补码:反码+1就得到补码。原创 2023-12-12 20:50:06 · 870 阅读 · 0 评论