
C语言进阶
文章平均质量分 82
C语言的更深层次的学习
软软kk
这个作者很懒,什么都没留下…
展开
-
C语言进阶9:内存
C语言进阶9:内存1、结构体字节对齐1.1 试一试1.2 字节对齐默认原则1.3 练习2、内存四区2.1 测试2.2 栈区(stack)2.3 堆区(heap)2.4 数据区(data)2.5 代码区(code)3、堆和栈的区别4、显示目标文件区段大小:size命令1、结构体字节对齐1.1 试一试#include <stdio.h>struct S1{ char c1; char c2; int n;};struct S2{ char c1;原创 2022-02-10 22:44:51 · 743 阅读 · 0 评论 -
C语言进阶8:变量分类
1、本地变量/局部变量1.1 遍地变量/局部变量是什么?1.2 本地变量/局部变量有什么特点?1.3 本地变量/局部变量初始化2、全局变量2.1 全局变量是什么?2.2 全局变量有什么特点?2.3 全局变量初始化2.4 同名隐藏3、全局静态变量3.1 全局静态变量是什么?3.2 全局变量与全局静态变量区别4、本地静态变量4.1 静态本地变量是什么?4.2 静态本地变量有什么特点?5. 总结5.1 变量的作用域和生命期6. static关键字小结:7. 7. 最佳实践7.原创 2022-02-10 20:56:25 · 898 阅读 · 0 评论 -
C语言进阶7:变量作用域与生存期
C语言进阶7:变量作用域与生存期1、作用域1.1 作用域是什么?1.2 作用域怎么用?(1)test1(2)test2(3)test32、生存期2.1 生存期是什么?2.2 生存期怎么用?(1)test1(2)test23、同名隐藏(1)test1(2)test2变量的作用力和生存期相当于变量的"攻击范围"和"生命力"。1、作用域1.1 作用域是什么?在什么范围内可以访问这个变量。1.2 作用域怎么用?(1)test1#include <stdio.h>int main(){原创 2022-01-18 21:21:58 · 391 阅读 · 0 评论 -
C语言进阶6:二进制操作
1、位运算1.1 按位运算No.操作符功能1&按位与2l按位或3~按位取反4^按位异或1.2 运算规则pqp & qp l qp ^ q000000101111110100111.3 示例1.3.1 按位与让某一位或某些位为0。int n = 0xFFFF;n = n & 0x0010;截取二进制数中的一段值。int n原创 2022-01-18 21:07:13 · 2891 阅读 · 0 评论 -
C语言进阶5:头文件
C语言进阶5:头文件1、背景2、头文件2.1 头文件是什么?2.2 头文件怎么用?2.3 头文件怎么写?2.3.1 声明(1)常见的声明(2)重复声明(3)定义与声明2.3.2 标准头文件结构(1)误区:3、示例(1)student.c(2)student.h(3)student_operation.c(4)student_operation.h(5)main.c1、背景编写小的程序可以把代码写在一个文件中,当编写大程序中,需要把代码分在多个文件中。(1)多个源代码文件(2) main()里面代码太原创 2022-01-17 15:30:09 · 538 阅读 · 0 评论 -
C语言进阶4:宏定义
C语言进阶4:宏定义1、宏定义是什么?2、宏定义怎么用?2.1 宏定义常量2.1.1 预定义宏2.1.2 自定义宏(1)语法(2)示例(3)说明2.2 带参数的宏(1)语法(2)示例(3)说明(4)练习2.3 编译预处理3、宏展开4、编译预处理指令1、宏定义是什么?宏是用来表示一段代码的标识符。宏也是标识符,也要满足标识符的规则。但通常习惯使用大写字母和下划线命名。2、宏定义怎么用?宏定义通常有三种用法:(1)当作常量使用。(2)当作函数使用。(3)编译预处理。2.1 宏定义常量2.1.原创 2022-01-17 10:12:51 · 715 阅读 · 0 评论 -
C语言进阶3:二维指针
C进阶3:二维指针1、什么是二维指针?1.1 示例11.2 示例22、二维指针怎么用2.1 二维指针作为函数参数2.1.1 传入一位指针地址(1)可以取出单个变量(2)可以取出一个数组2.1.2 传入指针数组地址2.2 二维指针作为函数返回值(1)示例1、什么是二维指针?二维指针与一维指针一样都是保存地址的变量。1.1 示例1#include <stdio.h>int main(){ int n=0,m=0; printf("&n=%p\n",&n);原创 2022-01-17 09:37:23 · 885 阅读 · 0 评论 -
C语言进阶2:动态分配内存
C语言进阶2:动态分配内存1、动态分配内存是什么?2、动态分配内存怎么用?2.1 申请动态分配内存malloc()2.2 释放动态分配内存free()2.2.1 free()的坑2.2.2 指针悬空==野指针2.3 初始化动态分配内存2.3.1 试一试,申请的动态内存内的值是多少?2.3.2 内存初始化为02.4 重新调整内存的大小2.5 内存分配函数小结2.6 标准库中相关函数1、动态分配内存是什么?是指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。通常我们的变量都是预先分配的,系统自原创 2022-01-16 20:38:46 · 132 阅读 · 0 评论 -
C语言进阶1:文件操作
C语言进阶1:文件操作1、文件输入和操作1.1 Hello.c1.2 编译1.3 执行2、文件打开关闭:fopen()和fclose()2.1 打开文件:fopen()2.1.1 函数原型2.1.2 参数2.1.3 打开的基本方式2.1.4 打开组合方式2.1.5 返回值2.2 关闭文件:fclose()2.2.1 函数原型2.2.2 参数和返回值2.3 基本框架3、文本读写:fprintf()和fscanf()3.1 函数原型3.2 举例(1)将数据写入文件(2)从文件中读出数据(3)给文件写和从文件读(原创 2022-01-07 21:39:50 · 780 阅读 · 0 评论