内存对齐
零 前言 自定义类型也就是:结构体,联合和枚举。这部分的基础知识在前面的文章中我们也详细的讲过。点击阅读 我们这一节主要来讲一相关的些比较重要的知识。 一 结构体 1. 内存对齐 Ⅰ)引入 struct S1{ char c1; int i; char c2;}; 上面是一...
动态内存管理
想看更好的排版可以阅读原文 点击阅读原文 思维导图 目录 @[toc] 正文 零 简单了解内存区域划分 一 动态内存函数 1.1 malloc malloc -> memory allocate void* malloc (size_t size) size_t 类型就是 u...
字符串函数与内存函数
思维导图 目录 @[toc] 正文 strlen & strlen_s getchar() & putchar() strcmp & strncmp() strcpy() & strncpy() strcat & strncat() 以上这几...
有关指针
指针的运算 详解 指针的运算 指针加减 常量 请看下面的程序,猜测一下结果: int main() { int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int* a = &arr; printf("...
教你用简单的程序判断你的电脑是大端还是小端
如何用程序判断自己的机器是大端还是小端? 通常情况下,我们的计算机都是小端存储模式。 小端:数字的低位存储到内存的低地址上。 大端:数字的低位存储到内存的高地址上。 我们在 VS 中创建一个临时变脸 int a = 0x11223344;// 十六进制数 然后打开调试器,看到变量 a 在...
指针进阶
指针进阶 目录 [TOC] 前言 指针的概念 指针就是个变量,用来存放地址,地址唯一标识一块内存空间。 指针的大小是固定的4/8个字节(32位平台/64位平台)。 指针是有类型,指针的类型决定了指针的±整数的步长,指针解引用操作的时候的权限。 1、字符指针 字符串的 数组 与 指针...
浅谈 C 语言实现重载,多态和模板
C 语言实现重载,多态和模板 为什么 C 语言不支持重载 这和 C 和 C++ 的函数名称修饰有关。编译(并汇编)一个 C 和 Cpp 程序,使用 objdump -dS 命令查看 ELF 格式文件发现: [root@SuperhandsomeChuan ~]# objdump -dS tes...
那些关于函数我们容易忽略的基础知识
相信在学校同学们看谭老师的教材的时候已经对函数有了“初步的认识”。 但是,如果你没有理解下面这几个例子,那并不能说你对函数入门了。 1.为什么要声明函数? #include<stdio.h>void swap();int main() { int a = 0; ...
这些关于数组的基础知识点你都知道吗
各位同学,你觉得你数组学会了吗?不妨看看下面的问题,你能看一眼程序就回答上来吗? 引子:观察下面的程序,这个程序有安全隐患吗? #include<stdio.h>int main() { int x = 0; double sum = 0; int nu...
小端和整型存储
1.如何用程序判断自己的机器是大端还是小端? 通常情况下,我们的计算机都是小端存储模式。 小端:数字的低位存储到内存的低地址上。 大端:数字的低位存储到内存的高地址上。 我们在 VS 中创建一个临时变脸 int a = 0x11223344;// 十六进制数 然后打开调试器,看到变量 a...