1.什么是C语言
C语言是一门通用的计算机编程语言,广泛应用于底层开发。
C语言是一门面向过程的计算机编程语言,其编译器主要有Clang、GCC、MSVC等。
声明:本人C语言代码是在VS2019下运行调试的,其编译器为MSVC。
2.第一个C语言程序
#include <stdio.h>
int main()
{
printf("hello world\n");
return 0;
}
main函数是程序的入口(F10),且一个工程内只能出现一个main函数
stdio.h:标准输入输出头文件——对应——printf库函数
std:standard
i:input
o:output
.h:头文件
3.数据类型
#include <stdio.h>
int main()
{
printf("%d\n", sizeof(char));
printf("%d\n", sizeof(short));
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(long));
printf("%d\n", sizeof(long long));
printf("%d\n", sizeof(float));
printf("%d\n", sizeof(double));
printf("%d\n", sizeof(long double));
return 0;
}
sizeof():用来计算一个类型的大小。
C语言中没有字符串数据类型,C语言中的字符串是通过字符指针来间接实现的。
eg:char *p = "linux";此时p就叫做字符串,但是实际上p只是一个字符指针(本质上就是一个指针变量,只是p指向了一个字符串的起始地址而已)
其中C语言规定 sizeof(long)>=sizeof(int)
3.变量与常量
3.1、定义变量的方法
int salary = 200000
float weight = 70f //若没有f系统自定义为double型
char ch = 'w'
3.2、变量的分类
- 局部变量:函数体(代码块)内部的变量
- 全局变量:函数体(代码块)外部的变量
#include <stdio.h>
int global = 21;
int main()
{
int local = 20;
int global = 22;
printf("global = %d\n", global);
printf("local = %d\n", local);
return 0;
}
注意:当局部变量与全局变量同名时,局部优先(不建议局部和全局变量同名)
3.3变量的使用
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;//求和初始化
printf("请输入两个数:");
scanf("%d %d", &num1, &num2);//&取地址符号
sum = num1 + num2;
printf("sum = %d\n", sum);
return 0;
}
#define _CRT_SECURE_NO_WARNINGS 1:是为了防止运行scanf库函数报错,vs2019认为scanf函数是一个不安全的函数。
3.4、变量的作用域和生命周期
-
局部变量的作用域:变量所在的局部范围(函数体)
局部变量的生命周期:进入作用域生命周期开始,出作用域结束
-
全局变量的作用域:整个工程体(可跨文件使用)
全局变量的生命周期:整段程序的生命周期(与程序共存亡)
3.5、常量
定义形式:
- 字面常量 eg:3.14 10 ‘a’ “abcd” 浮点型 整型 字符 字符串
- const 修饰的常变量(本质上是变量,形式上是常量)
const(常属性的意思)具有常属性的变量是不能被更改的
#include <stdio.h>
int main()
{
const float pai = 3.14f;
printf("%f\n", pai);
pai = 5.23f;
printf("%f\n", pai);
}
运行报错,此时的pai是被const修饰的常变量,具有不可修改的属性,但pai本质上仍是一个变量。
- #define 定义的标识符常量
#include <stdio.h>
#define N 10
int main()
{
printf("a = %d\n", N);
return 0;
}
- 枚举常量(enum:枚举关键字)
#include <stdio.h>
enum Sex
{
MALE,
FEMALE,
SECRET
};
int main()
{
printf("%d\n", MALE);
printf("%d\n", FEMALE);
printf("%d\n", SECRET);
return 0;
}
好吧,今天就到这里了,12.13是一个值得纪念的日子,第一次学习C、第一次发博客,第一次发gitte,也算是代码漫漫长途中的一个启程吧。可能有很多东西不太正确,希望评论底下的uu们多多指正,共同进步。