嵌入式Linux C(十二)——复合数据类型
一、struct结构体struct 定义结构体类型:第一个字母大写;{}后面有;号结构体名一定能体现结构体的作用(自注释性)最好写在全局,或者写在头文件(结构体定义在函数内部,只能由该函数调用)不可以保存函数,但是可以保存函数指针用.或者->访问结构体变量的成员初始化(野指针问题、直接给数组名赋值(指针常量))结构体之间的赋值:浅拷贝;—>深拷贝浅拷贝(自己写)释放两次深拷贝?//深....
嵌入式Linux C(十一)——关键字
关键字1. register关键字寄存器变量使用:只能修饰局部变量,不能修饰函数寄存器变量:有可能保存在CPU的寄存器,省去CPU从内存中获取数据的时间,从而提高运行效率使用场景:频繁被访问的变量,用register修饰可以起到优化程序运行效率的效果使用注意事项:1.不能通过&来获取register修饰变量的地址 2.register修饰的变量类型一定是CPU所需处理的类型;CPU:运算....
嵌入式Linux C(十)——编译预处理
一、宏定义指令1.0前言宏一定要大写预处理:预处理主要任务:1.头文件展开 2. 宏替换 3. 条件编译 gcc -E头文件展开:#include <> VS #include “”<>:包含系统定义的头文件(/usr/include),搜索路径:/usr/onclude 系统的头文件目录“”:包含自定义的头文件,搜索路径:现在当前目录查找,再到系统头文件目录查找gcc ....
嵌入式Linux C(九)——内存管理
内存管理1. 硬件(静态存储)VS内存(动态存储)区别hello.c hello(硬盘) ./hello(hello从硬盘加载内内存中)2. 为什么所有的编程都关注内存管理?内存属于稀缺资源3. 编程过程中,内存管理主要做什么?防止内存泄露4. 如何防止内存泄露?用户自己管理:缺点:对用户的要求比较高(良好编码习惯、经验值) 优点:开销少,实时性高系统管理:能够有效防止内存泄露 缺点:开销大,实....
嵌入式Linux C(八)——函数(详)
一、概述1.函数基础语法(函数定义、调用、声明)2.函数的使用注意事项(传值、返回值)3.企业级函数(复用性、维护性、扩展性)—>华为编码二、函数基础语法2.1 函数三要素函数名、函数形参、函数返回值函数名:命名体现自注释性,提高代码可读性(动词_名词)(4)不要出现拼音,多看开源代码函数形参:传什么类型要用什么类型的变量来接(a == 元素指针;aa == int (*a)[] aaa ....
嵌入式Linux C(七)——数组(详)
一、数组1.1 数组认知:静态分配空间(int a[100] 400个字节)----->空间利用率太差(1.不够用 2. 浪费空间)所占内存空间特点:连续的(物理连续) -->malloc分配空间不一定是物理连续(malloc实现原理:链表链接所有空闲的空间,组成最终分配的空间)1.2 如何使用数组定义数组:该定义多大?char src[1024]; -->柔性数组!!!注意事....
嵌入式Linux C(六)——字符串
一、前言字符串就是首字符的地址char *ptr = "hello world";//保存在数据段的or段,改数据不能被修改(常量字符串,不能被修改) char src[100] = "hello world";//保存在栈 char *str = (char *) malloc(sizeof(char) * 100);//保存在堆 strcpy(str,"hello world");二、字符串....
嵌入式Linux C(五)——指针
学习内容指针的作用*与&多级指针野指针字符串一、指针(深入浅出指针)谈谈你对指针的理解? (指针是什么)语法:指针是一种数据类型,它可以定义变量,变量保存的值是地址,由于地址是固定长度,所以指针变量的长度是固定长度;不同地址的步长不一样,需要不同指针类型的变量来保存;作用:由于指针变量可以保存地址,所以可以直接操作地址,也就是可以操作硬件的寄存器地址,从而实现直接访问硬件;支持的运算符:....
嵌入式Linux C(三)——运算符及表达式
一、自增、自减运算符i++;//过去的笔试题 i = 2; //例:i++; //i++结束标志,是一行最后的;或者函数的()还有,逗号 int num = (i++) + (i++) + (i++) + (i++); printf("num = %d\n",num); printf("i = %d\n"); //num 有两个输出结果的可能,i结果都是6 //结果1:14 num = 2 +.....
嵌入式Linux C(二)——数据类型(详)
一、数据类型分类:基本数据类型:(内置:编译器自带的类型):int(4)、short(2)、long(8)、long long、char(1)、float(4)、double(8)复合数据类型:(多个内置类型的组成的新类型):数组、union、struct、enumvoid类型:void *(万能指针):多态二、定义变量(注意事项:编码规范)变量的可读性 形容词_名词 (不允许用拼音命名!!!)....
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
Linux更多嵌入式相关
- Linux嵌入式平台
- ubuntu嵌入式Linux
- 嵌入式Linux设备树
- 嵌入式Linux
- 嵌入式Linux函数
- 嵌入式Linux编程
- 嵌入式Linux学习
- 嵌入式Linux多线程
- 嵌入式软件工程师Linux
- 嵌入式Linux多进程
- 嵌入式Linux开发
- 嵌入式Linux开发板
- 嵌入式Linux鸿蒙开发板imx6ull
- Linux嵌入式应用开发实战
- 嵌入式Linux移植
- 嵌入式Linux鸿蒙开发板imx6ull开发
- 嵌入式Linux语言
- 嵌入式Linux开发环境
- zynq嵌入式Linux开发
- arm嵌入式Linux
- 嵌入式Linux go语言开发
- 嵌入式Linux应用程序
- 嵌入式Linux分析
- 嵌入式Linux c语言
- 嵌入式Linux基础教程
- 嵌入式Linux串口
- 嵌入式Linux驱动程序
- 嵌入式Linux lcd
- arm嵌入式Linux移植
- 嵌入式Linux概述