2021-03-14

#include<stdio.h>
int main()
{
int a=0; 0000 0000 0000 0000 0000 0000 0000 0000
int b=~a; //~按位取反 1111 1111 1111 1111 1111 1111 1111 1111,补码-1,1111 1111 1111 1111 1111 1111 1111 1110,反码求反 1000 0000 0000 0000 0000 0001原码为-1
printf("%d\n",b); // -1
return 0;
}

#include<stdio.h>
int main()
{
int a=10;
int b=a++; //后置++
int c=++a; //前置++
int d=a- -; //后置 - -
int e=- -a; //前置- -
printf(“a=%d b=%d \n”,a,b); //11 10
printf(“a=%d c=%d \n”,a,c); //11 11
printf(“a=%d d=%d \n”,a,d); //9 10
printf(“a=%d e=%d \n”,a,e); //9 9
return 0;
}

后置位只变a,前置位两者都变

()强制类型转换
int a=3.14;//error 数据丢失
int a=(int)3.14; //double-> int

关系操作符

= 大于等
!= 不等于

逻辑与 只要有一个为假则假 &&
逻辑或 只要两者其一为真则真 ||

条件操作符
? :
int a=10;
int b=20;
int max=0;
if(a>b)
max=a;
else
max=b;

max=(a>b?a:b); //如果a>b,那么a被执行,赋值给max ;如果a<=b,那么b被执行,赋值给max 。

创建数组
int arr[10]={0};
arr[4]; //下标[] 引用操作符

#include<stdio.h>
int Add(int x,int y)
{
int z=0;
z=x+y;
return z;
}
int main()
{
int a=10;
int b=20;
int sum=Add(a,b); //圆括弧()函数调用操作符
return 0;
}

auto 关键字
int main()
{
int a=10; //a是局部变量,前面省略了一个auto
return 0;
}

break 关键字 用在循环语句switch case
变量名不与关键字同名
int float =2; //error
register 寄存器关键字

寄存器 访问速度快
cache 几十兆
内存 4G 8G 16G
硬盘 500G

int main()
{
register int a=10; //建议把a定义成寄存器变量
return 0;

signed
int main()
{
int a=10;
a=-2;
//int 定义的变量是有符号的,(signed)int
unsigned int nun=0;//无符号数,被看成正数
return 0;

typedef 类型定义,类型重命名
typedef unsigned int u_int;//重定义unsigned int,所以u_int也是一种类型
unsigned int num=20;
u_int num2=20;//与unsigned int 同名

union 联合体 共同体
volatile 段位
struct 结构图关键字
void 无 空

static修饰局部变量、全局变量、函数

void test()
{
int a=1; //a局部变量,进去的时候创建,出来的时候销毁
a++;
printf(“a=%d\n”,a); //a=2
}
int main()
{
int i=0;
while(i<5) //循环5次
{
test();
i++;
}
return 0;
}

举例说明
void test()
{
static int a=1; //a静态局部变量,存储功能,修饰的局部变量生命周期变长
a++;
printf(“a=%d\n”,a); //a=2 3 4 5 6 累计打印,保留上一次计算的结果
}
int main()
{
int i=0;
while(i<5) //循环5次
{
test();
i++;
}
return 0;
}

add.c文件
int g_val=2020;//全局变量

test.c文件
int main()
{
//extern 声明外部符号
extern int g_val;
printf(“g_val=%d\n”,g); //error找不到g_val
return 0;

举例说明
add.c文件
static int g_val=2020;//全局变量,修饰的全局变量作用域变小,让静态的全局变量只能在自己所在的源文件使用,出了源文件不能再使用

//声明外部函数
extern int Add(int,int);
int main()
{
int a=10;
int b=20;
int sum=Add(a,b);
printf(“sum=%d\n”,sum);
return 0;
}

add.c
//定义一个函数
int Add(int x,int y)
{
int z=x+y;
return z;
}

举例说明
//声明外部函数
extern int Add(int,int);
int main()
{
int a=10;
int b=20;
int sum=Add(a,b);
printf(“sum=%d\n”,sum);
return 0;
}

add.c
//定义一个函数
static int Add(int x,int y) //修饰函数,改变了函数的链接属性,外部链接属性变成了内部链接属性
{
int z=x+y;
return z;
}

#include<stdio.h>
//#define 定义标识符常量
//#define MAX 100
//#define 定义宏-带参数

//函数的实现
int Max(int x,int y)
{
if(x>y)
return x;
else
return y;
}

//宏的定义
#define MAX(X,Y) (X>Y?X:Y)
int main()
{
//int a=MAX;
int a=10;
int b=20;
//函数
int max=Max(a,b);
printf(“max=%d\n”,max);
//宏
max=MAX(a,b);
//max=(a>b?a:b);
printf(“max=%d\n”,max);
return 0;

//define 定义宏
#define ADD(x,y) ((x)+(y))
#include<stdio.h>
int main()
{
int sum=ADD(2,3);
printf("sum=%d\n”,sum);
sum=10*ADD(2,3);
printf(“sum=%d\n”,sum);
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值