C语言学习笔记
回顾曾经学习C语言中不足之处。
哈哈浩丶
初出茅庐小菜鸡!~
展开
-
嵌入式系统设计师学习笔记二十九:嵌入式程序设计④——C语言
嵌入式系统设计师学习笔记二十九:嵌入式程序设计④——C预处理预处理指令表:(编码规范:GB/T 28169-2011)关于宏定义 #denfine 详解可点击连接查看博主的另一篇文章 预定义宏预处理指令表:注意:宏名的书写由标识符与两边各两条下划线构成。C语言基本数据类型不同操作系统中数据类型所占字节数图解数据类型的其他分类:变量常量(字面量和const常量)void(特殊类型)数组(构造类型)枚举类型(自定义类型)结构体、位域和共用体(构造类型)C语言存储管理当一个原创 2021-05-11 22:17:12 · 1632 阅读 · 14 评论 -
C语言学习:const关键字
C语言学习:const关键字const 关键字 ——用于定义常变量的关键字(其通常在全局处定义作为全局常量)//主要用法有2种const int a = 10;int const a = 10;//这两种定义方式是等价的用const定义的是常量,但是其又具有变量的属性。//定义的常量,但是常量具有数据类型const int num = 1;//定义一个整型常量并赋值为1const char num = '1';//定义一个字符类型的常量并赋值为'1', //这里的1是一个字符类原创 2021-04-13 17:06:20 · 233 阅读 · 0 评论 -
C语言学习:C语言编译后的内存分布。
C语言编译后的内存分布。C语言经过编译后将内存分为以下几个区域:栈、堆、全局(静态)存储区、文字常量区和程序代码区。**栈:**由编译器进行管理,自动分配和释放,用于存放函数调用过程中的各种参数、局部变量、返回值以及函数的返回地址。(操作方式类似于数据结构中的栈。)//例:void fun(int num)//函数参数num{ int n = num;//局部变量n return n; // 返回值n}**堆:**用于程序动态申请分配和释放空间。(C中的malloc()和fre原创 2021-04-12 20:48:33 · 881 阅读 · 1 评论 -
C语言学习:原子操作
C语言学习:原子操作什么是原子操作?原子操作是不可分割的,在执行完毕之前不会被任何其它任务或事件中断,可以视为最小的操作单元,因此称为原子操作(个人认为叫"原子级操作更为形象")。(可以是一条指令,也可以是一系列整体性操作)在编程语言中一般分为两种情况(两种都应该满足):1) 在单线程中, 能够在单条指令中完成的操作都可以认为是" 原子操作",因为中断只能发生于指令之间。(多体现在单条汇编指令语句中)2) 在多线程中,不能被其它进程(线程)打断的操作就叫原子操作。为什么存在原子操作?在多核处原创 2021-04-11 17:00:20 · 4054 阅读 · 0 评论 -
C语言学习:头文件引入时:‘#include<文件名>‘和‘#include“ 文件名“ ‘的区别
C语言学习:头文件引入时:'#include<文件名>'和'#include" 文件名" '的区别#include<文件名> 编译时,只搜索系统目录,不会搜索本地目录。比如自己写了一个头文件,如果使用#inlcude<文件名>方式引入的时候会出错。#include<stdio.h>**#include"文件名"**编译时,会首先搜索本地目录,如果本地目录没有该文件才会去搜索系统目录。#include"stdio.h"如果把程序中所使用到的系统文原创 2021-04-11 16:05:24 · 1099 阅读 · 0 评论 -
C语言学习:宏定义#define
C语言学习:宏定义#definedefine是C语言中的预处理命令,它用于宏定义,可以提高源代码的可读性,为编程提供方便。预处理命令以“#”号开头,如包含命令#include,宏定义命令#define等。一般都放在源文件的前面,它们称为预处理部分。所谓预处理是指在进行编译之前所作的工作。预处理是C语言的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。宏的定义:在C或C++语言源程序中允许用一个标原创 2021-04-14 19:07:59 · 5307 阅读 · 4 评论 -
C语言学习:不同位数系统中的各种数据类型所占内存分析表
C语言学习:不同位数系统中的各种数据类型所占内存分析表8位系统已经很少,不具备分析意义,在此我整理了16位,32位,64位系统中各种数据类型所占的字节数及其范围。(图片仅供参考,都是找的资料,如有错误欢迎留言指正。)...原创 2021-04-15 21:38:15 · 322 阅读 · 0 评论