比特鹏哥第二节课笔记

c语言第二节课

使用部分c语言库的时候vs2010会提醒

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HECFY2ou-1649683114214)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411102327999.png)]

因为scanf()函数是不安全的,所以会警告,解决办法有两种

1 直接使用scanf_s()函数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jj6TYsGC-1649683114216)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411102532948.png)]但是该函数是vs2010提供的,如果使用其他编译器将无法编译运行代码,大大降低了跨平台性,所以推荐使用方法2

2.在源文件的第一行屏蔽vs2010的提示警告

image-20220411103042170但是每次创建源文件都要屏蔽一次警告过于繁琐 所以应该从vs2010的目录下更改一些文件

image-20220411104557146在newc++file.cpp中加入

#define _CRT_SECURE_NO_WARNINGS 1 以后每次创建源文件就不需要单独在屏蔽警告了

常量

1.字面常量

3 3.15 222之类的只有数字组成

2.const修饰的常变量

const int num=10;

表示这个变量的值只能为10

用来表示不可以变的变量 实际上还是变量

image-20220411110859978 image-20220411111357985

3 define 定义的标识符常量

#define 名字 值

image-20220411112238567

这种叫做标识符常量

4 枚举常量

enum 名字{

}

枚举常量里面的值也是不可变的

但是使用枚举类型生成的变量的值可以改变

所以 如果被变量接收的话 还是一个变量 直接使用的话就是常量

字符串

字符串使用char类型数组来存储

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wCTF7TSV-1649683114217)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411151146556.png)]可以使用字面量的形式赋值,也可给数组的每个元素单独赋值,但是通过两种不同不同的方法输出结果却不一样

使用F10 debug 然后等待两个数组创建完成之后 点击调试 - 窗口 -监视

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CsCZvBN3-1649683114217)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411152012092.png)]

发现两个数组的长度不一样 因为使用字面量创建数组的时候,会自动在char数组的最后自动加上0,也就是‘\0’(ASCll对应为0),但是通过对数组的每个元素赋值 会造成数组的末端没有人补0 一直向后输出

手动补的的话必须是数字0或者字符‘\0’,

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2ZoDbdea-1649683114218)(C:\Users\Y1531\AppData\Roaming\Typora\typora-user-images\image-20220411155300013.png)]

strlen是用来统计字符串长度的函数 需要引入

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b93n2j2d-1649683114219)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411160422167.png)]

字符串结束符‘\0’不算做字符串 因为b数组没有字符串结束符所以会出现随机数

转义字符

转变原来意思的字符

\t 换行 \n换行 如果想输出\就要多加一个\改变本身\的作用

例如输出路径

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pUSjZTZw-1649683114220)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411161705651.png)]

转义字符与其他字符一起使用是 算作一个字符

/ddd 后面可以跟1-3个八进制数字 会先转成十进制然后对应ASCll值

\x dd后面两个1-2个十六进制数字会转成十进制对应的ASCll字符

函数

函数分为库函数和自定义函数

数组

一个相同类型的集合

操作符

<<与>>

向左移位与向右移位

将十进制转成二进制

向左移位是把所有的1向左移然后在后面补0相当于十进制数乘2

向左移位是把所有的1向右移然后在前面相当于10进制数除以2

位操作

&按位与 二进制序列对比 都为真才为真

|按位或 二进制序列对比 有一个为真就是真

^按位异或 对应的二进制位相同则为0 对应的二进制位相异为1

在c语言里 0为假 1为真

sizeof 操作符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RfjmO0NS-1649683114221)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411210915034.png)]

sizeof操作变量的时候括号可以省略 操作数据类型的时候不能省略 sizeof可以测量数组所占字节数

数组长度=数组所占字节数/数组类型的字节数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nsSexBHR-1649683114221)(C:\Users\Y1531\Desktop\typroa\assets\image-20220411211512331.png)]在这里插入图片描述
比特鹏哥第二节课笔记_第1张图片
在这里插入图片描述
比特鹏哥第二节课笔记_第2张图片
比特鹏哥第二节课笔记_第3张图片
比特鹏哥第二节课笔记_第4张图片
比特鹏哥第二节课笔记_第5张图片
比特鹏哥第二节课笔记_第6张图片
在这里插入图片描述
比特鹏哥第二节课笔记_第7张图片

你可能感兴趣的:(c语言)