0基础认识C语言(理论+实操 2)

0基础认识C语言(理论+实操 2)

码农世界 2024-05-31 前端 99 次浏览 0个评论

小伙伴们大家好,今天也要撸起袖子加油干!万事开头难,越学到后面越轻松~

话不多说,开始正题~


前提回顾:

        接上次博客,我们学到了转义字符,最后留下两个转义字符不知道大家有没有动手尝试了一遍,在这里给大家演示一遍

\ddd            表示 1~3 个八进制的数字

\xdd            表示 2 个十六进制的数字

#include 
int main()
{
	printf("%c", '\123');
	/*这里由于是八进制 \123 输出的结果应该为83所对应的ASCII码为S
	3 * (8**0) + 2 * (8**1) + 1 * (8**2) == 83  【该行为83的计算过程】 */
	return 0;
}
#include 
int main()
{
	printf("%c", '\x23');
	/*这里由于是十六进制 \x23 输出的结果应该为35所对应的ASCII码为#
	3 * (16**0) + 2 * (16**1)  == 35 【该行为35的计算过程】 */
	return 0;
}

ASCII表如下图,大家可以试着找找,看输出结果是否一致 

 

恭喜大家攻克上次遗留的问题

下面我们正式进入今天的话题


 一、关于 strlen 与转义字符之间的小陷阱

首先 strlen 的作用是计算字符串的长度

然后你尝试了一行代码如下:

#include 
int main()
{
    printf("%zd",strlen("\\ta\11"));
    return 0;
}

当你信心满满本以为会输出 7 的时候,殊不知,你已经走入了陷阱 

当结果输出 4 的时候,你充满了震撼,what???

这个时候为什么会是 4 呢?大家还记得前面的转义字符吗?转义字符的长度是为1的

这个时候你恍然大悟,找到两个转义字符 \\  \11  ,终于理解了为什么输出了 4 

二、C语言的五种语句

空语句:单纯一个分号就是一个空语句

表达式语句:   表达式+;

函数调用语句:写出一个函数的时候我们一般会调用函数,这条语句是函数调用语句

复合语句:就是括号里面的语句一起组成

控制语句:是控制程序流程的语句,一般用来实现三种结构(顺序结构,选择结构,循环结构)

三、四种数据类型

基本类型          整型                   int

                        浮点型                float

                                                   double

                        字符类型             char


构造类型          数组类型

                        结构体类型

                        联合体类型

                        枚举类型


指针类型


空类型 

1.布尔类型(Bool)

介绍一个布尔类型,算是 int 子型,是专门用来创建真 / 假,一般我们也可以用 0 表示假,1表示真

首先布尔类型要包含头文件  #include

其次布尔类型只能有两种情况 true 或者 faulse 

用法为 _Bool = true / faulse;

2.数据类型大小

先让大家了解一下计算机中的单位,首先计算机中有二进制位分别是 0 和 1,一个 bit 可以存放1个二进制位,基本换算如下:

1 Byte = 8 bit

1 KB = 1024 Byte

1 MB =1024 KB 

1 GB = 1024 MB

1 TB = 1024 GB

1 PB = 1024 TB

PS:Byte 叫做字节

这个时候我们以字节为单位来看看数据类型的大小:

数据类型          字节大小                                           代码  

char                        1                                printf("%zd\n",sizeof(char));

bool                        1                                printf("%zd\n",sizeof(_Bool));

int                           4                                printf("%zd\n",sizeof(int));

short                       2                                printf("%zd\n",sizeof(short));

long                        4                                printf("%zd\n",sizeof(long));

long long                8                                printf("%zd\n",sizeof(long long));

float                        4                                printf("%zd\n",sizeof(float));

double                    8                                printf("%zd\n",sizeof(double));

long double            8                                printf("%zd\n",sizeof(long double));

 PS: sizeof 并不会计算表达式

3. signed & unsigned

signed                有符号

unsigned            无符号

我们举个例子来了解一下:

signed int n;                有符号整型,可以存放正整数和负整数

unsigned int n;            无符号整型,只能存放正数,范围更大

而我们一般写的 int n; 就是省略了 signed 

4.局部变量和全局变量

这个大家就记住括号里面的一般是局部变量,括号外面是全局变量

当局部变量和全局变量名字相同时,局部变量优先使用


好啦,今天内容就到这里啦~

大家要多上手实操,加油!

转载请注明来自码农世界,本文标题:《0基础认识C语言(理论+实操 2)》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,99人围观)参与讨论

还没有评论,来说两句吧...

Top