初识C语言

时间:2022-12-19 17:18:03

C语言——>早期不成熟——>成熟——>流行

国际标准

ANSIC——C89/C90

C99/C11并不流行--不少编译器不支持

%d——打印整型
%c——打印字符
%f—打印浮点数字—打小数
%p—以地址的形式打印
%x—打印16进制数字

变量的分类

  • 局部变量
  • 作用域:变量所在的局部范围
  • 生命周期:进入作用域生命周期开始,出作用域生命周期结束。
  • 全局变量
  • 作用域:整个工程
  • 生命周期:整个程序的生命周期。

数据类型

char       //字符数据类型   1
short //短整型 2
int //整型 4
long //长整型 4
long long //更长的整型 8
float //单精度浮点数 4
double //双精度浮点数 8

常量

  • 字面常量 :直接写出来的。
  • const修饰的常变量:

#include<stdio.h>
int main()
{
const int num=10;
printf("%d\n",num);
}
  • #define定义的标识符常量

#define MAX 10
  • 枚举常量

#include<stdio.h>
enum Sex
{
MALE,
FEMALE
};
int main()
{
printf("%d\n",MALE);
}

字符串:用双引号括起来引起来的一串字符

注意:结束标志\0

char arr[] = "abc";
char arr1[] = { 'a','b','c' };
printf("%s\n", arr);
printf("%s\n", arr1);
return 0;
arr输出结果:abc
arr1输出结果:abc烫烫烫
arr结束后自动有\0 arr1结束需要手动补\0

操作符:

  • 算术操作符:+ - * / %
  • 移位操作符:>>   <<
  • 位操作符:& (按位与)  | (按位或)  ^(按位异或)
  • 赋值操作符: =  +=   -=   *=   /=   &=  ^=  |=   >>=   <<=
  • 单目运算符:!- + & sizeof ~(按位取反) -- ++ *
  • 逻辑操作符:&&(逻辑与) ||(逻辑或)
  • 条件操作符:exp1 ?exp2 :exp3
  • 逗号表达式:exp1,exp2,exp3,...expN
  • 下标引用、函数调用和结构成员:[](下标引用操作符) ()(函数调用操作符) . ->

常见关键字

auto、break、case、char、const、continue、default、double、do、else、enum、extern、float、for、goto、if、int、long、register(寄存器关键字)、return、short、signed(有符号的)、unsigned、sizeof、static(静态的)、struct、switch、typedef(类型重命名)、union(联合体/共用体)、void(空)、volatile、while

define、include不是关键字,是预处理指令

static(静态的):

  • static修饰局部变量,改变了局部变量的生命周期(本质上改变了变量的存储类型)
  • static修饰全局变量,使得这个全局变量只能在自己所在的源文件(.c)内部使用,其他源文件不能使用(全局变量在其他源文件内部可以使用,是因为全局变量具有外部链接属性,但是被static修饰后,就变成了内部链接属性,其他源文件就不能链接到这个静态的全局变量)
  • static修饰函数
int text()
{
static int a = 1;
a++;
printf("%d ", a);
}
int main()
{
int i = 0;
while (i<10)
{
text();
i++;
}
return 0;
}
输出结果:2 3 4 5 6 7 8 9 10 11
static修饰的a不销毁

计算机中数据可以存在哪里?

  • 寄存器 小
  • 高速缓存 几十MB
  • 内存 8G-16G
  • 硬盘 500G
  • 网盘 2T