![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
accepted_accepted
当你迷茫的时候,不妨静下心来学习。
展开
-
内存对齐详解
内存对齐的主要目的是为了减少cpu寻址的次数。我们先来了解一下内存对齐的规则:所定义变量的初始地址是该变量类型所占字节的整数倍。比如int类型的变量,它的起始地址一定是4的整数倍,0,4,8等。short 类型的变量的起始地址是2的整数倍,0,2,4,6,8等。来看一个例子。//64bit#include<iostream>#include<deque>using namespace std;struct node{ char a; int b; doubl原创 2020-09-16 22:42:44 · 111 阅读 · 0 评论 -
结构体可变数组
#include"stdio.h"#include"malloc.h"#include<string.h>#include <stdlib.h>//int 4字节,char 1个字节struct node{ int member1; char member2[10]; int member3[0];//变长数组};void main(){ struct node *xiaobo1; //printf("%d",sizeof( struct node));原创 2020-09-11 19:08:29 · 690 阅读 · 0 评论 -
宏替换与宏定义
一. c /c++语言中使用宏的主要目的主要有 3 个:提高代码的可读性;把用到的常量定义成有意义的名字;无需函数调用,运行效率高;对于一些简单的操作,无需调用函数,虽然编程是强调模块化,但是函数调用时,需要保护现场和恢复现场。这些都需要耗时。对于复杂的操作来讲,这些耗时可以不计,但是对于简单的操作,则效率低下。利用宏来代替简单的操作,则可以提高程序的运行效率。可维护行好;对于用得比较多的常量或者简单操作,一旦需要修改,则只需要修改宏定义处,不需要逐条修改。二. 宏定义命令 : #defi转载 2020-09-05 08:55:03 · 816 阅读 · 0 评论 -
free释放是不是直接还给系统
装载 https://blog.csdn.net/YMY_mine/article/details/81180168?utm_source=blogxgwz9https://blog.csdn.net/zhangge3663/article/details/106896475?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242首先malloc/free()的操作取决于操作系统和编译器的转载 2020-09-02 11:53:40 · 1155 阅读 · 0 评论