【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)

发布于:2025-07-09 ⋅ 阅读:(15) ⋅ 点赞:(0)

 


🔥个人主页艾莉丝努力练剑

❄专栏传送门:《C语言》《数据结构与算法》C语言刷题12天IO强训LeetCode代码强化刷题

🍉学习方向:C/C++方向

⭐️人生格言:为天地立心,为生民立命,为往圣继绝学,为万世开太平


前言: 我们在学习过程中会碰到很多很多问题,本系列文章不会博主不会额外再创建一个新的专栏来收录,因为这一系列文章创作的初心主要是针对回顾知识点(遵循遗忘曲线并且根据自身的实际情况可以做出一些计划,回顾知识点很重要)、缓解学习过程中的可能出现的焦虑等等。主包就不另外开一个专栏了,uu们可以把本系列的文章作为【C语言】专栏的后日谈来看。

主包学习能力很一般,学起语言、算法来和大佬们完全无法比。主包起步也比较晚,主包正儿八经开始学C++是从今年的4月24号开始的,主包学习能力真的很一般,C语言这个基础也不扎实,看主包文章的诸位一定是比主包要强的,但主包学习过程中碰到的麻烦、思考、和做的知识点回顾对大家还是有用的。


 


目录

正文

三、知识点回顾

(四)注释

1、注释的作用

2、快捷键

3、注释不会编译报错的原因

(五)几种常见的数据类型

1、整型

2、字符型

3、浮点型

4、布尔型

5、数据类型

(六)数据类型长度

1、sizeof

2、打印两个相同类型数据的表达式计算结果

3、打印两个不同类型数据的表达式计算结果

 4、各种类型的长度

5、signed和unsigned

结尾


正文

三、知识点回顾

(四)注释

VS2022的常见快捷键整理

1、注释的作用

(1)注释就是给人看的。程序员写了几千行代码,我们以后在公司上班,公司给你一个项目不可能让你一个人做,你要和组里的其他同事一起做,不光是自己回头要看代码,你的同事看你写的代码的时候一看你的注释就明白了,注释就是给人看的;

(2)编译器会自动删掉注释,不会报错,因为注释有注释符号;

(3)我们不写没必要的注释,加上必要的注释;

(4)一段代码写完不想要了,删掉又觉得可惜,我们就可以选择注释掉。

我们来观察一下C语言和C++的注释风格:

(1)C:

/*     */

 C语言的注释风格,不支持嵌套注释。

//

C99标准新增,是从C++中引入的。

(2)C++:

//

 这是C++的注释风格。

2、快捷键

(1)注释的快捷键:Ctrl + K,Ctrl + C

(2)取消注释的快捷键:Ctrl + K,Ctrl + U。

如果用Ctrl + \就不能有空行,有空行就不灵了。

3、注释不会编译报错的原因

编译时注释会被替换成空格。

(五)几种常见的数据类型

常见的数据类型有字符型、整型、浮点型、布尔型。

1、整型

整型,即int,int是integer的简写,integer整数。

我们分了四种整型,其中long long是从C99中引入的

short int
int 
long int 
long long int

长度取决于是32位环境还是64位环境,环境不同,长度会有所差别。

signed
unsigned

(signed)——有符号的
(unsigned)——无符号的

2、字符型

字符型,即char,char是character的简称,character即字符。

字符分为:

(signed)——有符号的
(unsigned)——无符号的

3、浮点型
float
double
long double

4、布尔型

C99中引入,专门表示真假。

_Bool

布尔型的头文件如下——

<stdbool.h>

 我们分成大小写展示一下布尔型的写法——

(1)大写

#define  _CRT_SECURE_NO_WARNINGS  1

#include<stdbool.h>

int main()
{
	_Bool islike = true / false;
	if (islike)
		printf("I like C\n");
	else
		printf("I don't like C\n");
	return 0;
}

这里这个if语句就是如果为真,执行;如果为假,执行else。 

(2)小写

#include<stdbool.h>

int main()
{
	bool islike = true / false;
	if (islike)
		printf("I like C\n");
	else
		printf("I don't like C\n");
	return 0;
}
5、数据类型

(六)数据类型长度

1、sizeof

sizeof-->操作符,这里的sizeof是关键字,数据类型长度是以字节为单位的。

sizeof-->int(这里int是指代类型)-->要括号;

sizeof-->a(这里a是指代变量)-->括号可省略;

sizeof-->3+5(这里3+5是指代表达式)-->括号可省略。

2、打印两个相同类型数据的表达式计算结果

sizeo-->size_t类型-->%zd打印

比如刚才我们说的这个表达式“3+5”,我们把被加数和加数分开来看——

3-->整型-->4个字节;

5-->整型-->4个字节;

sizeof3+5-->整型-->4个字节。

两个整型相加的结果的数据类型还是整型,3+5=8,8也是整型,所以这里是4个字节。

3、打印两个不同类型数据的表达式计算结果

比如我们写这样一个代码:

#include<stdio.h>

int main()
{
	printf("%zd\n",sizeof(3+3.5));
	return 0;
}

大家猜猜,运行结果会是什么?

printf("%zd\n",sizeof( 3 + 3.5 ) );

                                    int   double

(1)int是4个字节,double是8个字节,至于为什么这里是double而不是float,这是编译器默认的;

(2)一个int和一个double算出的结果是什么类型取决于double。

 4、各种类型的长度
bool    1
char	1
short	2
int		4
long	4
long long	8
float	4
double	8
long double	8

其中在VS和gcc两个不同的编译器底下,long double数据类型的长度有区别:

 关于intlong这两个数据类型,C语言规定——

sizeof(long) >= sizeof(int)
		 4				4
		 8	

typedef是“重新起名”,我们之前在这个系列中第一次提到关键字(也叫保留字)这一概念就是在回顾typedef这个知识点的时候,【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(二),typedef就是一个保留字。

typedef  int  Elemtype

重新起名      元素类型

这里就是把int重新起名为Elemtype,Elemtype就是元素类型。

printf("%zd\n", sizeof(s = b + 1));

这里s代表short(短整型),b和1都是整型,这时sizeof的结果是取决于谁的?

根据上图,我们可知,取决于short。俗话说得好:“强龙不压地头蛇”嘛。

5、signed和unsigned

signed和unsigned——字符型和整型。

signed——有符号-->可以存正数,也可以存负数、0。

unsigned——无符号-->表示该类型不带有正负号,只能表示零和正整数。

unsigned in age;//年龄只有0、正整数
signed in temp;//温度
int num; = signed int num//signed可省略

 unsigned int 里面 int 可省略。

[signed]short[int]

 这里的signed和int都可以省略。

unsigned int a; --> unsigned a;

 unsigned,sizeof-->返回值应该是无符号的整型类型。

 <limits.h>-->说明了整型类型的取值范围——

signed char c;//-128~127

 <float.h>--> 说明了浮点型类型的取值范围——

unsigned char c;//0~255

类型-->创建变量。

int char;//err 错
 不可用关键字

创建变量不可用用关键字。这里的err是error(错误)的简写。


结尾

主动学习,只要有兴趣,只要喜欢学,到处是时间。

往期回顾:

【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(一)

【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(二)

结语:本篇文章内容回顾到这里就结束了,希望对大家伙有所帮助。如果大家觉得文章有帮助的话,记得一键四连——点赞、收藏、关注、评论!谢谢uu们的支持!


网站公告

今日签到

点亮在社区的每一天
去签到