存储类型

存储类型关键字:register、static、const、auto、extern

register寄存器变量,

(1)不一定真的存放在寄存器中

(2)不能定义寄存器数组

(3)cpu读取寄存器变量比读取内存变量更快

(4)只能修饰字符型、整型无法修饰浮点型

(5)不在内存中所以无法取地址

static 静态

保存在静态区

const常量

意思只读,不能修改它的值

auto int a 与 auto是相同的意思

extern为外部的意思,一般用于函数和全局变量的声明

其他关键字

sizeof        变量数组占用存储空间的大小

typedef        重命名相关的关键字

volatile      易改变,提醒编译器从最新内存这提取变量的值

基本数据类型赋值并输出

定义char类型的变量并赋值,输出字符使用%c,使用%d可以输出对应的Ascii码值。

定义int类型的变量并赋值,输出int,short类型字符使用%d。

输出long类型字符使用%ld。

输出float类型字符使用%f,默认保留后六位。

输出double类型字符使用%lf,默认保留后六位。

常量与变量

对于计算机而言只能识别二进制代码,然而对应于其他非数字常量需要转化为数字,使用ASCII码表

整型数据

八进制:0开头

十六进制:0x开头

字符常量与字符串常量

‘a’为字符常量,“a”为字符串常量,每个字符串的结尾编译器都会自动添加一个结束标志位‘\0’

八进制数输出是需要加个#,%#o

十六进制输出时需要加个#,%#x

格式化输出字符

没有专门的变量保存字符串,一边使用数数组来保存

char e[] = "hello world";
printf("e = %s\n",e);

输出地址,利用取地址符

int f = 999;
printf("&f = %p\n",&f);

类型转化

自动类型转化

(1)当表达式中出现了char、short、int中的一种,参加运算的成员会全部变为int类型参加运算,结果为int类型

(2)表达式中出现了带小数点的实数,则全部变为double类型,结果也为double类型

(3)表达式中有无符号数和有符号数,参加运算的成员变为无符号数,结果为无符号数

(4) 在赋值语句中等号右边的类型自动转换为等号左边的类型

(5)自动类型转换只是在运算中的临时转换,不会影响自动类型转换的变量值和类型

强制类型转换

把表达式的运算结果强制转换为类型说明符表示的类型

(类型说明符)表达式

算数运算符

只有整数才能取余

关系运算符

关系运算符连接的表达式只有真和假,一般用int保存,如果为真则为非0,为假则为0

位运算符

1、&按位与

与0的0,与1得1,某位清0

2、|按位或

或1得1,或0不变

3、~按位取反

1变0,0变1

4、^按位异或

相同位0不同为1

5、位移

>>右移  分为逻辑右移:高位补0,地位溢出

算数右移:高位补符号位,低位溢出(有符号位)

<<左移

逗号运算符

逗号运算符必须要加括号,A=(B,C,D)

依次运行B,C,D最后A的值为D的表达式结果

循环语句

goto循环在一个函数中实现代码的跳转

在平时编写代码时少使用goto会使代码可读性变差。

嵌入式C、C++概述相关推荐

  1. 嵌入式系统工程设计概述

    1.1 嵌入式系统设计的基本流程 不知各位读者是否记得在小学学过的一篇课文,说的是统筹方法,课文中举了泡茶喝这个例子.比方,想泡壶茶喝.当时的情况是:开水没有:水壶要洗,茶壶茶杯要洗:火生了,茶叶也有 ...

  2. 嵌入式学习笔记——概述

    嵌入式系统概述 前言 "嵌入式系统"概念 1.是个啥? 2.可以干啥? 3.有哪些入坑方向? 4.入坑后可以有多少薪资? 单片机 1.什么是单片机? 2.架构简介 3.基于ARM架 ...

  3. 嵌入式系统(Embedded System)概述及其应用

    前言 嵌入式系统?听到这个名词,没有接触的人是不是感觉很高大上?它真的有你心中想象的那样高级吗?关于嵌入式的基本概述,本篇博文将从以下几个方面阐述,部分内容可能不是很详细,感兴趣读者可以查阅相关资料. ...

  4. 嵌入式学习笔记——STM32的USART通信概述

    文章目录 前言 常用通信协议分类及其特征介绍 通信协议 通信协议分类 1.同步异步通信 2.全双工/半双工/单工 3.现场总线/板级总线 4. 串行/并行通信 5. 有线通信.无线通信 STM32通信 ...

  5. 0.嵌入式控制器EC实战 Embedded Controller开发概述

    文章目录 1.嵌入式控制器EC概述 2.EC芯片框图(IT8502为例) 3.General Purpose I/O Port (GPIO) 4.SMBus(System Management Bus ...

  6. 全球及中国嵌入式家电行业销售格局及竞争策略研究报告2021-2027年版

    全球及中国嵌入式家电行业销售格局及竞争策略研究报告2021-2027年版 目录 2020年,全球嵌入式家电市场规模达到了 百万美元,预计2027年可以达到 百万美元,年复合增长率(CAGR)为 % ( ...

  7. linux 嵌入式串口通信设计目的,基于linux的嵌入式串口通信.doc

    PAGE 天津电子信息职业技术学院 <嵌入式软件编程>课程报告 课程名称:基于linux的嵌入式串口通信 课程代码: 115229 姓 名: 甘琦 学 号: 48 专 业: 物联网应用技术 ...

  8. linux 嵌入式串口通信,基于linux的嵌入式串口通信综述.doc

    PAGE 天津电子信息职业技术学院 <嵌入式软件编程>课程报告 课程名称:基于linux的嵌入式串口通信课程代码: 115229 姓 名: 甘琦 学 号: 48 专 业: 物联网应用技术 ...

  9. 1.1 嵌入式系统的定义和组成

    1.1 嵌入式系统的定义和组成 1.1.1 嵌入式系统的定义 以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗严格要求的专用计算机系统. 1.1.2 嵌入式 ...

  10. 《嵌入式系统设计师》笔记之一——嵌入式系统基础知识

    1.1 嵌入式系统的定义和组成 1.1.1 嵌入式系统的定义 以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗严格要求的专用计算机系统. 1.1.2 嵌入式 ...

最新文章

  1. 使用PHP应用查询SAP HANA Express Edition里的数据
  2. Loading 遮蔽层 简单实现。
  3. css-3秒(大概吧...)快速撸出YY游戏页面(三)
  4. Hash哈希(hashCode、HashSet 、HashMap)
  5. 《Java程序员面试秘笈》—— 面试题10 类继承的建模表示方法
  6. Android异常总结---res\layout\addUser.xml: Invalid file name: must contain only [a-z
  7. override java field_JAVA方法的重载(overload)和覆盖(override)
  8. 犀牛Rhino教程合集37部
  9. 数学建模英文论文写作
  10. C语言链表翻转的三种实现方式(栈、头插法、递归法)
  11. 爬取网易云音乐评论,延伸就能爬取网易云音乐的绝大多数数据
  12. 产品经理面试必备常见10道题及解析
  13. SEM和SEO有什么区别,哪种更好一些
  14. Ps抠图(小白教程)
  15. 为您奉上Dicom文件格式属性清单,不谢!
  16. 手机社会化分享到qq好友、qq空间、微信、微信朋友圈、微博等(区分浏览器)
  17. 树莓派的ssh连接配置
  18. 五千来字小作文,是的,我们是有个HTTP。
  19. 文字太多时给文本框添加滑动条——text + ContentSizeFitter + Scroll View
  20. html代码的魔方加密,三维魔方加密算法如何给文本文件加密

热门文章

  1. php 百度sitemap changefreq,php实现百度sitemap实时推送
  2. 全球与中国电梯光幕市场现状及未来发展趋势(2022)
  3. AOJ:Areas on the Cross-Section Diagram水域面积
  4. Keep客户端 In-App Purchase 掉单踩坑指南
  5. android 自动闪光灯,Android 控制闪光灯
  6. make makefile cmake qmake都是什么,有什么区别?
  7. 我的矛盾—自我意识与精神内耗
  8. 阿里云域名购买、认证、解析 腾讯企业邮箱注册、解析
  9. 学习前端开发的基本目录结构
  10. 51单片机K型热电偶温度采集及控制温控模块MAX6675热电偶LCD1602