C语言基础
文章平均质量分 58
Fashoon
Monkey·D·Luffy --> 两年修行归来
展开
-
#include <> ““区别
内容引自:https://blog.csdn.net/cui_shuang_xi/article/details/48679505C语言中两种方式使用#include命令, #include <>与#include ””的区别一种是在包含指令#include后面”<>”将头文件名括起来。这种方式用于标准或系统提供的头文件,到保存系统标准头文件的位置查找头文件。另一种是在包含指令#include后用双引号””将头文件包括起来。这种方式常用与程序员自己的头文件。用这种格式时.转载 2020-12-20 14:37:23 · 567 阅读 · 0 评论 -
C基础 const volatile等
volatile:volatile是一个类型修饰符(type specifier),就像大家更熟悉的const一样,它是被设计用来修饰被不同线程访问和修改的变量。volatile的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值。可理解为每次都从内存地址中读取数据,不从寄存器中读取。举例:精确地说就是,优化器在用到这个变量时必须每次都小转载 2017-12-05 14:57:46 · 143 阅读 · 0 评论 -
C语言中#和##的用法
今天在看FreeRTOS代码看到如下代码:开机初始化:log_create_module(template, PRINT_LEVEL_INFO);宏定义:#define log_create_module(_module, _level) \log_control_block_t log_control_block_##_module = \{ \ #_module, \ (DEBUG...原创 2018-02-10 11:16:19 · 398 阅读 · 0 评论 -
结构体占用内存,如何计算
最近一直研究结构体占用内存空间大小问题,在网上看了很多文章,很多都是有问题的,所以自己总结了一份,已通过验证,如有问题,请多指教!编译器环境:keil 5.0语言:C结构体占用空间计算要点:双管齐下1、内部数据对齐2、整个空间对齐入题分析:struct SIZE{double a;int b;char c;double d;};原创 2018-04-11 10:52:11 · 2906 阅读 · 1 评论 -
结构体定义的几种形式
最近一直研究结构体,整理几种结构体定义方式:1、最常用定义方式:定义结构体data,此时结构体相当于一个类型,比如int,如需使用此结构体,方法同intstruct data{ char aa; char bb; char cc; int dd;}; struct data sum1, sum2;2、定义结构体data同时,定义需要使用的结构体变量sum1,sum2。...原创 2018-04-11 15:49:55 · 48471 阅读 · 9 评论 -
结构体指针
结构体指针:指向结构体的指针。是非常普遍存在的使用方式,必须掌握!上车:typedef struct data //typedef定义结构体,别名为DATA{ int aa; int bb; int cc; int dd;}DATA;以下temp1, temp2的赋值操作都可行,temp1是指针直接指向结构体内部变量,temp2是指针转换为结构体后,再使用结构体变量访问方式。两种方式都编译过,...原创 2018-04-12 09:55:08 · 286 阅读 · 0 评论 -
C语言单向链表的基本操作
掌握结构体,指针后,链表作为两种形式的集合,将C语言的作用发挥到巨大。链表知识123链表是线性表,包括两个部分:数据域&指针域数据域:存储需要保存的数据指针域:各个节点之间的连接连续性:链表在逻辑上是连续的,但物理上未必连续链表主要有单向链表,双向链表,循环链表链表操作:对于链表的操作一般包括增加,删除,修改,查找下面对单向链表进行举例操作:操作环境:keil v4,串口软件,有硬...原创 2018-06-27 15:22:42 · 7456 阅读 · 0 评论