没有合适的资源?快使用搜索试试~ 我知道了~
首页C语言初学者入门指南:比特鹏哥视频学习笔记
C语言初学者入门指南:比特鹏哥视频学习笔记
需积分: 0 9 下载量 41 浏览量
更新于2024-07-09
收藏 49.77MB PDF 举报
"C语言学习笔记.pdf" 这是一份专为C语言初学者设计的学习笔记,由作者镜湖月整理,他通过跟随B站上的比特鹏哥的C语言视频教程进行学习,并将学习过程中的收获整理成这份详实的文档。笔记中提供了所有相关资源的链接,包括视频教程、课件、源码以及编译器的选择和配置。 比特鹏哥的C语言视频教程分为2020版和2021版,作者推荐2021版,因为其音质、时长控制以及内容呈现更优。2020版和2021版的课件和源码都有相应的链接和密码,方便学习者查阅和实践。此外,作者还提到了比特课程介绍,有兴趣的读者可以通过提供的链接了解更多课程信息。 在编译器的选择上,作者明确推荐使用VS系列(2010及以上版本)和VSCode。对于初次使用VS2019的用户,他还提供了一个视频教程链接,帮助快速掌握该编译器的使用。至于VSCode,虽然没有详细介绍,但指出需要自行配置C/C++环境,网上有相关的教程可参考,比如B站和知乎上都能找到。 笔记中包含的内容预计会涵盖C语言的基础概念,如变量、数据类型、运算符、流程控制语句、函数、指针等,以及更高级的主题,如结构体、内存管理、预处理器等。作者作为初学者,鼓励其他学习者对笔记中的错误进行指正,甚至直接修改源文件,体现出开放的学习交流态度。 这份C语言学习笔记是初学者的宝贵资源,结合比特鹏哥的视频教程,将为学习者提供一个全面且实用的C语言入门路径。通过学习,不仅可以掌握C语言的基本语法,还能了解到如何有效地使用编译器进行编程实践,进一步提升编程技能。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/42541839/bg10.jpg)
打印出来的1、2、4、4、8……是什么呢?首先我们需要对计算机存储单位有一定了解。
计算机最小的存储单位:bit — 比特位。一个比特位存放一个二进制 数字(0 / 1)。再
大一点的单位是byte — 字节。一个字节 8个比特位。接着就是kb、mb、gb、tb、
pb……它们之间的换算规则是这样的:
, , ,
上图的内容指明了不同类型的数据所占内存空间的大小。
C 数据类型 ,主要看整型、浮点型。剩余的类型会在后面讲到。
sizeof(long) 4 / 8,C语言标准规定, sizeof(long) sizeof(int) 就
可以。一般在32位平台下,sizeof(long) 4;在64位平台下,sizeof(long) 8。
四、变量、常量
H2
生活中的有些值是不变的,eg:身份证号码,血型等等;有些值是可变的,eg:年龄,体
重,薪资。不变的值,C语言用常量来表示;可变的值,C语言用变量来表示。
(一)定义变量的方法
H3
问题:float定义变量为什么加 f ?
答:像2.5这样的数,C语言默认为double类型,从double向float转换自然要警告,因为
是高精度向低精度转换会丢失数据。2.5f中加上个 f ,告诉编译器这个浮点数为float类
型。
(二)变量的分类
H3
变量分为两类:全局变量、局部变量。使用见下方实例。
int age = 100;
char ch = 'x';
float weight = 71.2f;
No. 15 / 305
![](https://csdnimg.cn/release/download_crawler_static/42541839/bg11.jpg)
1、全局变量:定义在代码块( {} )外的变量。
2、局部变量:定义在代码块( {} )内的变量。
下面我们来看一段代码,这样的定义有没有问题?
事实上,这样定义并没有问题,但是不推荐这样使用。全局变量和局部变量的名字相同,
容易误会,可能会产生bug。那为什么打印结果是10?因为当局部变量和全局变量同名
时,局部变量优先使用。
(三)变量的作用域和生命周期
H3
1、作用域
H4
作用域(scope),属于程序设计概念。通常来说,一段代码中所用到的变量并不总是有
效的 or 可用的。限定这个变量可用性的代码范围就是这个变量的作用域。
示例
#include<stdio.h>
int num2 = 100;//全局变量
int main()
{
int num1 = 10;//局部变量
printf("num1 = %d\n", num1);
}
#include<stdio.h>
int num1 = 100;
int main()
{
int num1 = 10;
printf("num1 = %d\n", num1);
}
//打印结果:10。
No. 16 / 305
![](https://csdnimg.cn/release/download_crawler_static/42541839/bg12.jpg)
原因:作用域在起作用,局部变量仅在其作用域内可用。
作用域范围
局部变量的作用域是变量所在的局部范围。
全局变量的作用域是整个工程。
2、生命周期
H4
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。
局部变量的生命周期:进入作用域,生命周期开始;出作用域,生命周期结束。
全局变量的生命周期:整个程序的生命周期。
(四)常量
H3
C语言中的常量分为: 字面常量、 const 修饰的常变量、 #defne 定义的标识符常
量、枚举常量(后面两个知识点会在后文细讲)。
1、字面常量
#include<stdio.h>
int num2 = 100;
int main()
{
{
int num1 = 10;
}
printf("num1 = %d\n", num1);
。
//运⾏报错。
#include<stdio.h>
int main()
{
100;//字⾯常量
2.5;//字⾯常量
1;//字⾯常量
}
No. 17 / 305
![](https://csdnimg.cn/release/download_crawler_static/42541839/bg13.jpg)
2、 const 修饰的常变量 C语言中的const
const — 常属性。num:const修饰的常变量,本质上,num还是一个变量。
3、 #defne 定义的标识符常量
4、枚举常量
生活中有一些事物是可以一一列举的,eg:星期、颜色、性别、月份等等。
枚举常量关键字: enum
#include<stdio.h>
int main()
{
const int num = 10;
printf("%d\n", num);
num = 20;
printf("%d\n", num);
return 0;
}
#define MAX 100
#include<stdio.h>
int main()
{
int num = MAX;
printf("%d\n", num);
return 0;
}
#include<stdio.h>
enum week //星期
{
Mon,
Tues,
Wed,
Thur,
Fri,
Sat,
Sun
};
No. 18 / 305
![](https://csdnimg.cn/release/download_crawler_static/42541839/bg14.jpg)
五、字符串、转义字符、注释
H2
(一)字符串
H3
这种由双引号(double quote — "" )引起来的一串字符称为字符串字面值(String
Literal),简称字符串。
注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度(strlen)时, \0 是
结束标志,不是字符串内容。 \0 对字符串来说,很重要。
示例
C语言库函数 - strlen( ) _菜鸟教程
int main()
{
enum week day = Mon;
return 0;
}
"hello world"
"hello jinghu-moon"
""//空字符串
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[] = "jing";
char arr2[] = { 'j','i','n','g' };
printf("arr1 = %s\n", arr1);
printf("arr2 = %s\n", arr2);
printf("\n");
printf("arr1 = %d\n", strlen(arr1));
printf("arr2 = %d\n", strlen(arr2));
return 0;
}
//strlen函数:计算字符串⻓度,遇到'\0'停⽌。
No. 19 / 305
剩余305页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://profile-avatar.csdnimg.cn/30b6d60ab67b431aae875bc16400da46_whc18858.jpg!1)
罅隙`
- 粉丝: 9440
- 资源: 3
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Vue实现iOS原生Picker组件:详细解析与实现思路
- Arduino蓝牙小车:参数调试与功能控制
- 百度Java面试精华:200页精选资源涵盖核心知识点
- Swift使用CoreData填坑指南:CoreData在Swift 3.0的变化
- 微距离无线充电器创新设计及其实验探索
- MTK Android平台开发全攻略:44步详解流程
- RecyclerView全面解析:替代ListView的新选择
- Android开发:自动适配中英文键盘解决方案
- Android调用WebService接口教程
- Android开发:BitmapUtil图片处理全解析与实例
- Android多线程断点续传实现详解
- PCA算法在人脸识别会议签到系统中的应用
- EventBus 3.0:Android事件总线详解与实战应用
- Android FileUtil:全面解析文件操作实用技巧与实例
- RecyclerView添加头部和尾部实战教程
- Android实现微博滑动固定顶部栏实战与优化
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)