![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
小帅哥gaoyi
上帝保佑,大家晚安!https://github.com/gaoyi221119
展开
-
c文件操作
c文件操作原创 2016-11-30 14:47:11 · 757 阅读 · 1 评论 -
C语言中const关键字
关键字const用来定义常量,如果一个变量被const修饰,那么它的值就不能再被改变,我想一定有人有这样的疑问,C语言中不是有#define吗,干嘛还要用const呢,我想事物的存在一定有它自己的道理,所以说const的存在一定有它的合理性,与预编译指令相比,const修饰符有以下的优点:1、预编译指令只是对值进行简单的替换,不能进行类型检查;2、可以保护被修饰的东西,防止意外修改,增强程序的健壮性原创 2017-10-20 11:39:56 · 456 阅读 · 0 评论 -
中断服务函数能不能带形参和返回值
从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器。如果中断的线是激活的,中断控制器就把电信号发送给处理器的某个特定引脚。处理器于是立即停止自己正在做的事,跳到中断处理程序的入口点,进行中断处理。(1) 硬中断 由与系统相连的外设(比如网卡、硬盘)自动产生的。主要是用来通知操作系统系统外设状态的变化。比如当网卡收到数据包的时候,就会发出一个中断原创 2017-10-19 22:45:34 · 10109 阅读 · 0 评论 -
fopen()和fclose()的用法
fopen()和fclose()的用法原创 2016-11-29 20:08:06 · 968 阅读 · 0 评论 -
含参数的宏与函数、内联函数的区别
含参数的宏与函数的区别1、宏替换不占运行时间,只占编译时间;而函数调用则占运行时间(分配单元、保留现场、值传递、返回),所以每次执行都要载入所以执行起来比较慢一些。2、 定义宏的时候不要在宏及其参数之间键入空格,因为宏替换的时候会把你不经意打的空格当作宏的一部分进去。3、在宏定义中把每个参数都用括号括起来,同时把整个结果也用括号(对于单个表达式的宏,可以使用小括号(),对于宏定义的复合语句可以使用{原创 2017-09-15 20:00:17 · 647 阅读 · 0 评论 -
open和fopen的区别
open和fopen的区别:1.缓冲文件系统 缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存 “缓冲区”的大小,影响着实际操作外存的次数,内存“缓冲区”越大,则操作外原创 2017-09-15 16:06:17 · 310 阅读 · 0 评论 -
vs调试过程
vs调试过程原创 2016-12-01 10:16:10 · 573 阅读 · 1 评论 -
malloc函数解析
malloc 向系统申请分配指定size个字节的内存空间。返回类型是 void* 类型。void* 表示未确定类型的指针。C,C++规定,void* 类型可以通过类型转换强制转换为任何其它类型的指针。功能分配长度为num_bytes字节的内存块返回值如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL原创 2016-08-27 18:29:03 · 645 阅读 · 0 评论 -
高级语言为什么不直接编译成机器码,而编译成汇编代码?
高级语言为什么不直接编译成机器码,而编译成汇编代码?原创 2016-11-24 13:55:56 · 16541 阅读 · 14 评论 -
顺序 链式 索引 散列存储
存储结构分四类:顺序存储、链式存储、索引存储和散列存储。 顺序结构和链接结构适用在内存结构中。 索引结构和散列结构适用在外存与内存交互结构。顺序存储:在计算机中用一组地址连续的存储单元依次存储线性表的各个数据元素,称作线性表的顺序存储结构。 特点: 1、随机存取表中元素。 2、插入和删除操作需要移动元素。链式存储:在计算机中用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的原创 2017-09-13 16:03:32 · 1662 阅读 · 0 评论 -
内存泄漏及内存溢出
1. 什么是内存泄漏(memory leak) 指由于疏忽或错误造成程序未能释放已经不再使用的内存。内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,失去了对该段内存的控制,因而造成了内存的浪费。 2. 对于C和C++这种没有Garbage Collection 的语言来讲,我们主要关注两种类型的内存泄漏: 堆内存泄漏(Heap leak)。对内存指的是程序运行中根原创 2017-09-13 10:31:12 · 280 阅读 · 0 评论 -
C/C++中关键字extren作用总结
**C/C++中关键字extren作用总结** 1、基本解释: 具体的extern的两种作用: 2、extern变量: 在使用extern时要严格对应声明时的格式,在实际编程中这样 的错误屡见不鲜! extern用在变量声明时常常有这样的一个作用,在.c文件中声明了一个全局变量,这个全局变量如果要被引用,就要放在.h文件中并用extern声明。3、单方面修改函数原型: 函数提供单方面修原创 2017-05-13 11:13:06 · 818 阅读 · 0 评论 -
链表中LinkList L与LinkList *L的区别
typedef struct Node{int elem;struct node * next;}node,*LinkList;对于LinkList L: L是指向定义的node结构体的指针,可以用->运算符来访问结构体成员,即L->elem,而(*L)就是个Node型的结构体了,可以用点运算符访问该结构体成员,即(*L).elem;对于LinkList *L:L是指向定义的Node结构体指针原创 2017-05-23 13:50:13 · 6627 阅读 · 5 评论 -
程序员面试之刷题推荐
刷题注意的事:1、要经常在白板或者纸上写代码,检查是否漏掉情况,然后键入电脑运行测试写的代码;2、用自己最擅长的语言去练习和面试,一般选择的语言是Java,Python,C,C++;3、在睡觉前回忆一下今天刷的题或者阅读一些面试有关的书籍,研究表明睡前回忆或者阅读有非常好的记忆效果(可以参考论文研究);4、在面试最期望去的公司前去面试一些其他公司,最好的准备是去真实环境中体验面试;推荐刷题面试书籍:原创 2017-03-10 09:14:44 · 767 阅读 · 0 评论 -
堆和栈的区别(内存和数据结构)
堆和栈的区别(内存和数据结构)原创 2017-02-08 14:22:13 · 295 阅读 · 0 评论 -
C语言中volatile在什么情况下使用
volatile是易变的,不稳定的意思,volatile是关键字,是一种类型修饰符,用它修饰的变量表示可以被某些编译器未知的因素更改,比如操作系统、硬件或者其他线程等,遇到这个关键字声明的变量,编译器对访问该变量的代码不在进行优化,从而可以提供对特殊地址的稳定访问。volatile 关键字告诉编译器该变量是随时可能发生变化的,每次使用它的时候必须从内存中取出他的值,因而编译器生成的汇编代码会从原内存原创 2017-10-20 12:00:10 · 1632 阅读 · 0 评论