✨ 个人主页:在线OJ的阿川
?文章专栏:C语言入门到进阶
?代码仓库:
写在开头
现在您看到的是我的结论或想法,但在这背后凝结了大量的思考、经验和讨论
目录
1. 编译器多提一句 多提二句 2. ASCII码表多提三句3. 操作符4. 关键字多提四句
1. 编译器
使用的编译器是Visual Studio Istaller2022编译器,在c语言当中通过编译再加链接,可以生成一个可执行程序(.exe)。
多提一句
在C语言中,main函数表示程序的入口。
\n 表示换行,注意是反斜杠 \ 。
%d 表示以10进制输出的一个整数。
首先我们先来打印一下所有的数据类型的大小
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){printf("%d\n", sizeof(char));printf("%d\n", sizeof(short));printf("%d\n", sizeof(int));printf("%d\n", sizeof(float));printf("%d\n", sizeof(double));printf("%d\n", sizeof(long));printf("%d\n", sizeof(long long));return 0;}
再其次写一个刚进入编程中必写的两数之和: #define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>int main(){int a; int b;scanf("%d %d", &a, &b);int c = a + b;printf("%d\n", c);return 0;}
多提二句
在 printf 函数中根据要打印的类型不同,从而参数也不同。
在同一个工程下,若要使用同工程下的点c文件中的变或常量,则需要声明外部符号。
C语言中的常量:
字面常量(如3.14,4,“hello”,‘a’)const的修饰的常变量#define定义的标识符常量枚举常量enum 注释 切记嵌套注释。 在字符串中它会默认以\0结束,但是不会作为其字符串中的大小。转义字符
转变原有意思,但它本身还是一个字符常见的有:
\n 换行\t 水平制表符\a 系统警告,就是系统响一声\b 光标退格符\ 可将转义字符转成普通的字符\ddd 1~3个8进制的\xdd 1~2个16进制的这里详细讲一下\b 光标退格符
详细讲一下
2. ASCII码表
多提三句
Scanf 的返回值是读取有效数据的个数,如果读取失败则返回的是EOF(error of file) ctrl+z可以直接让scanf的返回值为EOF.
除法有:
整数除法浮点数除法浮点数除法条件是:至少有一位是浮点数。
返回值类型,编译器默认为double类型,若要float类型,则要浮点数f 前置加加减减,后置加加减减:以一个例子就明白了
3. 操作符
移位操作符/位操作符(均与二进制有关)
移位操作符: >> <<位操作符:& | ^单目操作符(一个操作数)
取地址 &解引用 *对一个数的二进制按位取反 ~其他操作符
[ ]下标引用操作符
()函数调用操作符
. → 结构成员操作符
4. 关键字
auto 自动 int a = 1;这种局部变量,它其实前面省略了auto;也就是它会自动创建栈帧,自动销毁栈帧,就是因为省略了auto.多提四句
逗号表达式( , , ,) 从左往右依次计算,将最后一个结果作为表达式的最终结果数据存放
电脑上存放数据 其实最开始只有内存和硬盘。 内存大概分为三个区域:但随着 CPU(通用计算芯片)高速发展,处理速度越来越快,导致系统从内存中读取数据跟不上,从而出现了缓存和寄存器,尤其是寄存器,读取数据速度很快,可以跟上CPU的处理速度.
register 寄存器5. 类别讲解
分支类
switch casedefault 默认循环类
do while自定义类型
struct 结构体类型
union 联合体类型
修饰类型
unsigned/signed 无符号/有符号类型typedef 类型重定义static 静态的
修饰局部变量,变成静态局部变量
不销毁栈帧,生命周期延长,但作用域未延长修饰全局变量或函数变成静态全局变量或函数
会使全局变量或函数的外部链接属性失效
define 宏名(参数) (函数体) 宏 本质:还是替换
6. 夹带私货
若你能看到看到这篇文章且能看到这,则说明你我有缘,留个关注吧,后面还会接着计算机408、底层原理、开源项目、以及数据、后端研发相关、各种竞赛相关、简历相关、考研、学术相关……,祝你我变得更强
道阻且长 行则将至 |
---|
个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力 |