目录
一.第一个c语言程序
-
对于vs2022软件认知 和 程序程序认知
- 打开vs
- 创建项目
- 3.创建资源文件
以后缀区分(.c 源文件 .h头文件)
注意后缀! 如果是以.cpp为后缀 编译器会按照C++编译 如果是以C为后缀 就是C语言
4.写代码
亲手写的
批注; C语言中一定要有main函数
也就是主函数
int main() 也有void main()古老写法
{
Return 0;
}
以上是标准的主函数写法 int是整型类型
Return 0 的0是整数
Printf(“呵呵\n”); printf是一个库函数 用来打印数据的
#include<stdio.h> 包含头文件 也就是使用头文件 stdio.h 是标准输入输出的意思
Ctrl F5 是快捷运行 也可以在调试中找到
Main函数是C语言的入口
Ctrl+k+c 注释 ctrl+K+u 取消注释
二.数据类型
数据类型
写代码是为了解决生活中的问题
66.6-小数-浮点型
66-整数-整型
Q@#%-字符
浮点数指的是66.6=6.66x10
展示
结果输出100
返回各种字节所占大小
计算机单位 bit-比特位 计算机中最小的单位
Byte-字节
Kb-一千字节
Mb Gb TB PB……………..
计算机能理解的是二进制 只有0和 1
存贮一个1 或者 0 占一个bit
1byte=8bit 1kb=1024byte 此后都为1024 也就是2的十次
C语言规定 sizeof(long)大于等于sizeof(int)
类型用法
变量与常量
三.常量与变量
变量和常量
(数据类型复习)
变量分为 局部变量 和 全局变量
{内的是局部变量}外的全局变量
全局变量和局部变量可以同时定义 但 局部变量优先
当全局变量和局部变量名字相同的情况局部优先
建议不要全局和局部相同
使用scanf 要加入 #define _CRT_SECURE_NO_WARNINGS
结果展示
四.变量的作用域和生命周期
变量的生命域 · 生命周期
- 局部变量
- 全局变量
局部变量的定义域是变量所在的局部范围
当a在内时仅内显
在外都现
全局变量的作用域是整个工程
生命周期
例如中 只有在第二个括号中的 a 存在数 当在括号外面的时候 不存在 a 也就是从{ 始到}结束。全局变量就是从整个程序开始到结束。
此上只是大于的一种情况。
五.常量
常量 描述不变量的
1.字面常量
2.const 修饰的常变量
3.define 定义的表示符常量
4.枚举常量
但是变量是可以改变的
若是需要不可改常量 加const
在C语言中 const修饰的a 本质是变量 但是不能被修改 有常量的属性
创建数组 int arr[10] = {0};
Define 定义的标识常量
而 define 定义的是全局常量
枚举常量
六.字符串
字符串
“hello word\n”
这种由双引号引起来的是字符串,里面藏有\0 这个是结束标志 不算内容
没有字符串类型
用双引号引出字符
七.转义字符
转义字符
转变字符的意思
在printf(“abcn”); 变为 printf(”abc\n”);
中 让n变成连\n 也就是变成了 换行
\0 是终止子u
转义字符 | 意义 |
\? | 当多个?连用,防止被解析成三字母词 |
\' | 表示字符常量‘ |
\" | 表示字符串内部的双引号 |
\\ | 表示一个反斜杠 |
\a | 蜂鸣 |
\b | 退格符 |
\f | 禁纸符 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
\ddd | 1~3个八进制数字 |
\xdd | dd是两个16进制数字 |
现在已经没有三字母词 并不支持
d-整型 c-字符 s-字符串 f-float(小数) lf-double字符
打出单引号 加 \
重要字符
\ddd \xdd
对于\ddd 有 AscII编码
\xdd 16进制数字 同上用法
而且 字符算一个字符
八.注释
注释部分
在编写语言时候 写出注释// 来解释 如
注释可以解释代码也可以用来取消代码
还有个方法
是最原始
C语言的注释分割
它不支持嵌套注释
建议用注释来进行梳理方便
注释可以对复杂的代码进行解释
写代码是帮助自己帮助别人的
九.选择语句
选择语句
也就是 if 和 else 的运用
还有switch主要表现能选择的意思
循环语句
循环是可打破的
有 while for do….while
下面演示while循环
Line大于2W时 输出结果一
提前结束会 结果二
如
十.函数
函数
C语言是结构化的程序设计语言
一般有
-顺序结构
-选择结构
-循环结构
比如求和代码
中 定义了add函数
Add 执行 x+y=z 之后 返回 z结果
Add只是个名字 括号内的是参数 大括号内的是函数体 int是返回类型
定义好后可以反复调用
(简化版)
十一.数组
数组
从下标访问数据
如
的结果是
十二.操作符
操作符 (现在了解,以后详细学)
操作符提供了灵活的操作
如 7/2 输出 3 (商) /两端都是整数 执行整数除法 有浮点 按浮点除法
7 %2 输出 1 (余数)
%1f 小数点后一位 以此类推
取模操作字符必须是整数
单目操作符
!真变假 假变真操作
Sizeof 操作计算字符大小
这玩意出来出40 每个整型 4个字节
后置先使用后加 前置 先加后使用
--同理
函数调用
调用的方法是使用那个括号
Add 2 3 都是()的操作数
十三.关键字
常见关键字
变量的命名要有意义
如int age
Float salary
变量的名字是字母、数字、下划线组成、不能有特殊字符,同时不能以数字开头
变量名不能是关键字
十四.关键词
Typedef
类型定义,也就是类型重命名
理解类型重命名即
Static是起修饰作用
Static修饰的局部变量,在除了作用域时候,是不销毁的。
.本质上 stactic修饰局部变量的时候,改变了变量的存储位置
Void是不用返回的意思
Static也会修改连接属性
Extern 是引入外部函数 数据 的 重要函数
函数 也是 具有 外部连接数的
Register 寄存器
一个电脑上存储空间和设备都有哪些
Define 定义宏 定义标识符常量
Define 定义宏
十五.指针
指针
内存会划分为一个个的内存单元(一个字节)
每个内存单元都有一个编号
对于32位电脑 那么它又2的三十二次方个字节 也就是有429497296byte 也就是4096MB 也就是4GB
对于64位电脑 会利用更大的内存
申请内存
例如
那么a就占了四个字节 如果要取a的地址 就是取首地址 用&a取地址
按F10 进行调试 后去观察 内存 和 监视窗口可以了解地址情况
这里的内存要倒着看才是存储的东西
但如果打印出来地址 是以16进制打印的 我电脑的是
也可以储存地址
那么此时 p 就是指针变量 (编号指向地址,地址也是指针)
存放指针(地址)的变量就是指针变量
对于上面 P 指向 a的地址 a指向自己的所定义的数值
在int * 中的 * 是指 p 代表指针变量 而int 是指代表的类型
又比如 char
在这里 *p 已经等于 a 了
所以 a 就等于 20 了
指针变量的大小 (sizeof返回建议用zu)
不管是什么类型 都是一个指针
指针变量是用来存放地址的
指针变量的大小取决于一个地址的时候需要多大空间
32位-32bit-4byte
64位-64-8byte
十六.结构体
结构体 struct
是吧一些单一类型组合在一起的做法。
比如描述一个人
这个相当于是一张图纸
然后定义
结果是
此时也可以给整个结构体弄一个指针
初识C语言完课,感谢大家观看,这个只是一些笔记,如果有什么问题请私信谢谢。