嵌入式学习第二天

今天主要是对C语言的语法,规则进行深入学习。了解了一些相关概念:

常量:在程序运行过程中,不发生改变的量;
变量:在程序运行过程中,可以发生改变的量,因为其有内存空间。

RAM:易失性存储器;
ROM:不易失性纯存储器。

Bit:比特;
Byte:字节;
8Bit=1Byte。

标识符:由字母数字下划线组成,首位不能是数字,可以是字母和下划线

#if 0     
#endif 中间的代码会被注释掉(敲代码技巧)

sizeof; 查询空间字符大小

首先学习了一些数据类型

1.整型

有符号整型‌: %d 以有符号的值以十进制输出

1.int(4字节)范围-2^31 ~ 2^31-1;

2.short int(2字节)范围-2^16 ~ 2^16-1;

3.long int(4或8字节)范围-2^32 ~ 2^32-1;

4.long long int(8字节)范围-2^63 ~ 2^63-1。‌‌

无符号整型‌: %u 以无符号的值以十进制输出

1.unsigned int(4字节)范围0 ~ 2^32-1;

2.unsigned short(2字节)范围0 ~ 2^16-1;

3.unsigned long(4或8字节)范围0 ~ 2^32-1;

4.unsigned long long(8字节)范围0 ~ 2^64-1。‌‌

2.浮点型  

%f 小数 (小数点后保留6位小数)

1.float(单精度,4字节)。

2.double(双精度,8字节)。

3.long double(扩展精度,可能为8或16字节)。‌‌

123e3表示123x10^3    e后必须为整型(整数)

计算机对浮点型进行存储的方式

f分为:
符号位:1
阶码:8
位数:23

计算标准:

符号位:正数为0 负数为1;
阶码:用科学计数法表示二进制小数,小数点向前移动的位数+127即为阶码的十进制数,再将其转化为8位2进制数;
尾数:只取小数点后面的数,不足23位的话再在后面补0补够23位。

注:0.9这个常量为double双精度浮点型,在后缀加f变为0.9f即可为单精度浮点型

3.字符型

char(1字节),用于存储ASCII字符(-128 ~ 127或0 ~ 255,取决于是否为无符号)。‌‌

%c 输出ASIC II码

字符型常量 需要输出的值加单引号‘ ’  如‘H’ ‘e’ 'l' ‘l’ ‘o’。

今日完成任务:

请编译程序将“China ”译成密码,用原来字母后面的第4个字母代替原来的字母。例如:字母A后面的第四个字母是E,用E代替A。因此"China"应译为"Glmre"。请编一道程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量分别为'C','h','i','n','a',经过运算,使c1,c2,c3,c4,c5分别为'G','l','m','r','e',然后输出。

完成代码如下:

 #include <stdio.h>
  2 
  3 int main(void)
  4 {
  5    char c1,c2,c3,c4,c5;
  6    c1='C';
  7    c2='h';
  8    c3='i';
  9    c4='n';
 10    c5='a';
 11 
 12    printf("%c%c%c%c%c\n",c1+4,c2+4,c3+4,c4+4,c5+4);                
 13    return 0;
 14 
 16 }

结果如下:

linux@ubuntu:~/C/2025.7.15$ gcc main.c 
linux@ubuntu:~/C/2025.7.15$ ./a.out 
Glmre

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值