C语言基础知识汇总3

操作符,可以不使用括号的

    单目操作符

    ! 逻辑反操作符

   - 负数操作符

    + 正数操作符

    & 取地址操作符

    sizeof 操作数的类型长度操作符

    ~ 对一个数的二进制按位取反操作符

   --前置,后置--

    ++前置,后置++

eg:int a =1;

printf("%d",a++); <输出为1> 后置++ 或 --,先表达出原来的值,再进行++或--

int a=1;

printf("%d",++a);<输出为2>前置++或--先计算值,再输出或使用

sizeof 操作数的类型长度操作符

int a[10] = { 0 };

printf("%d\n",sizeof(a));

sizeof(a[0]);输出值为4<一个整形四个字节(32个比特位)>

对一个数的二进制按位取反操作符

int a = 0;

printf("%d\n", ~a);输出为-1

表示:10000000000000000000000000000001

整数(正数):原码,反码,补码一致

整数(负数):在内存中,以补码的形式存在

原码:1000000000000000000000000001

反码:11111111111111111111111111111110//符号位(第一位)不变,其他位改变

补码:11111111111111111111111111111111//在反码的基础上加1

1.所有的正数按位取反的值是其本身+1的负数

2.所有的负数按位取反的值是其本身+1的绝对值

3.0按位取反得到是-1

//关系操作符

    >, >= , <= , != , ==

 //逻辑操作符

    && ||

//条件操作符

 exp1 ? exp2 : exp3;

int a = 3;

int b = 7;

int max = 0;

  if (a > b)

    {

        max = a;

    }

    else

    {

        max = b;

    }

   max = a > b ? a : b;<如果a>b就输出a>

    

//逗号表达式

    //exp1, exp2, exp3...expN;

    int a = 3;

    int b = 7;

    int c = 0;

    int d = (a = b - c, b = c + a, c = a - b);//结果为最后一个表达式的结果<因为是逗号>

    printf("%d\n", d);

关键字

1.定义:C语言提供的,不能自己创建的,为关键字。比如 int, return;

2.不能把关键字作为变量名

常见的关键字:

auto:自动变量关键字

{

 int a = 1;

变量a,在进大括号的时候,变量创建

出大括号的时候,变量自动销毁

}

  //循环判断关键词

    //break;//循环程序中,跳出循环关键字,

    //while //while循环

    //for//

    //case//选择语句关键词

    //continue//循环关键词

    //if

    //else

    //switch

    //default

    //do-while

    //goto//跳转语句

//变量类型关键字

    //char, int, float, double, long, short,

    //signed//有符号类型 -10+20    int 00000000000000000000000000000000    -2^31-0~2^31

    //unsigned//无符号类型       int  00000000000000000000000000000000 0~2^32 //%u

    //const//常变量关键字

    //enum;//枚举关键字

    //extern;//外部变量、函数申明符号

extern int Add(int x, int y);

extern int gol_a;

void test()

{

static int a = 1;

a++;

 printf("%d\n", a);

}

int main()

{

int i = 0;

while (i<10)

{

test();

 i++;

 }

Add(1, 2);

printf("%d", gol_a);

return 0;

}

//static 修饰局部变量的时候,局部变量改变自身生命周期,变成了与全局变量生命周期一致

//static 修饰全局变量,使得全局变量只能在自己所在的源文件(.c)使用

//改变外部链接属性,使得其无法在其他文件中使用。

//static 修饰函数,使得函数只能在自己所在的源文件(.c)使用

//#define 定义的常量

//#define PI 3.14

int main()

{

 printf("%f", PI);

  return 0;

}

//define 定义的宏

#define PRINTF printf("Hello world!\n")

#define ADD(x,y) ((x)+(y))

int main()

{

    PRINTF;

    int a = 3*ADD(2, 3);

    printf("%d\n", a);

    return 0;

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值