scanf 是C语言提供的
scanf_s 不是标准C语言提供的,是VS编译器提供的(尽量使用C语言提供的函数)
scanf、strcpy、strlen、strcat… 都是不安全的
局部变量:
1.局部变量的作用域是变量所在的局部范围
2.全局变量的作用域是整个工程
生命周期:
变量的生命周期指的是变量的创建到变量销毁之间的一个时间段
1.局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
2.全局变量的生命周期是:整个程序的生命周期。
常量:
C语言中的常量和变量的定义的形式有所差异。
C语言的常量分为以下几种:
1.字面常量 (直接写出来的值 就叫字面常量)
2.const 修饰的常变量
3.#define 定义的标识符常量
4.枚举常量 (枚举常量不能改变)
代码:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//int main()
//{
// int num1 = 0;
// int num2 = 0;
// int sum = 0;
// scanf("%d%d", &num1, &num2);
// sum = num1 + num2;
// printf("sum = %d\n", sum);
// return 0;
//}
//int main()
//{
// //const - 常属性
// const int n = 10;//n是变量,但是又有常属性,所以我们说n是常变量
// int arr[10] = { 0 };
//
// //const -- 常属性
// //const 修饰的常变量
// /*const int num = 4;
// printf("%d\n", num);
// num = 8;
// printf("%d\n", num);*/
// //3;//字面常量
// //100;//字面常量
// //3.14;//字面常量
//
// return 0;
//}
//#define 定义的标识符常量
//#define MAX 10
//int main()
//{
// int arr[MAX] = {0};
// printf("%d\n", MAX);
// return 0;
//}
//枚举常量
//枚举 - 一一例举
//
//性别:男,女,保密
//三原色:红、黄、蓝
//星期:1,2,3,4,5,6,7
//枚举关键 --enum
enum Sex
{
MALE,
FEMALE,
SECRET
};
//MALE,FEMALE,SECRET - 枚举常量
int main()
{
//enum Sex s = FEMALE;
printf("%d\n", MALE);//0
printf("%d\n", FEMALE);//1
printf("%d\n", SECRET);//2
return 0;
}
字符串+转义字符+注释
字符串:
"hello bit.\n"
这种由双引号引起来的一串字符称为字符串字面值,或者简称字符串
注:字符串的标志是一个\0的转义字符,在计算字符串长度的时候\0是结束标志,不算作字符串内容
代码:
int main()
{
char arr1[] = "abcdef";//数组
//"abc" -- 'a' 'b' 'c' '\0' \0是指字符串的结束标志
char arr2[] = "hello bit";
char arr3[] = {'a','b','c',0};//空字符串
// /0=0
printf("%s\n", arr1);
printf("%s\n", arr2);
printf("%s\n", arr3);
return 0;
}
数据在计算机上存储的时候,存储的是2进制
a =97
A=65
…
这叫做ASCII编码 ASCII码值
strlen - string length 计算字符串长度的
转义字符:转变原来字符的意思
\t ---水平制表符
\?--在书写连续多个问号时使用,防止他们被解析成三字母词
\' ---用于表示字符常量'
\" ----用于表示一个字符串内部的双引号
\\ 用于表示一个反斜杠,防止它被解释为一个转义序列符
\a----警告字符,蜂鸣
\b ----退格符
\f-----进纸符
\n ----换行
\r -----回车
\v ------垂直制表符
\ddd -----ddd表示1~3个八进制的数字。如:\130X
\xdd -----dd表示2个十六进制数字,如:\x30 0
注释:
注释有两种风格
C语言风格的注释 /*xxxxxxxxxxxxx*/
缺陷:不能嵌套注释
C++风格的注释://xxxxxxxxxxx
可以注释一行也可以注释多行
选择语句:
代码:
int main()
{
int input = 0;
printf("加入比特\n");
printf("你要好好学习嘛?(1/0)>:");
scanf("%d", &input);//1/0
if (input ==1)
{
printf("好offer\n");
}
else
{
printf("卖红薯\n");
}
return 0;
}
C语言中的循环语句:
while语句
for语句
do while语句
while语句:
代码:
int main()
{
int line = 0;
printf("加入比特\n");
while (line<20000)
{
printf("敲一行代码:%d\n",line);
line++;
}
if (line>= 20000)
{
printf("恭喜你,有个好offer\n");
}
return 0;
}
数组:
C语言中给了数组的定义:一组相同类型元素的集合
算术操作符:
+ - * 、 %
位移操作符
>> :左移 << : 右移
位操作符
& ^ |
赋值操作符
= += -= *= /= &= ^= |= >>= <<=
异或的计算规律:
对应的二进制位相同,则为0
对应的二进制位相异,则为1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通