C基础02天——笔记

1.宏替换,完全展开替换,注意带来副作用

#include <stdio.h>
#define  打印语句 printf(“hello”);

 

Void main(void)

{

      If (1)

           打印语句;;

      Else

           ….;

}

Void main(void)

{

      If (1)

           printf(“hello”);

      ;

      Else

           ….;

}

2.程序编译链接的过程

.c 经过预处理,编译,汇编,链接,最终生成可执行程序(.exe/ELF)

 

3.常量,定义以后其值不能改变的数

宏定义一个常量

#define  PI   3.14

C语言关键字const

const int TIEMS = 10;

 

例题:

Const  int  b;

b = 10;

4.变量,拥有固定大小的存储空间,里面存放的数值可以修改

 

5.标识符命名规则

 

6.变量的基本类型

char      

short

Int

Long

Long long

 

float

Double

隐式类型转换规则

小字节向大字节类型转换,低级别向高级别类型转换

 

例题:

double  result;

result = 3 * 5 -2 + ‘a’ * 1.1

 

强制类型转换

Char ch = ‘a’;

Int b = 3 + (long)ch;

 

什么是表达式?

3

3+5

b-a

(int)(3*4-5+6/7+2.3)

 

 

 

 

 

 

 

精度丢失

void main(void)

{

      int  num = 0x12345678;

      char ch;

      ch = num;

      printf(“%x”, ch);

      printf(“%d”, num);

}

笔试题:测试当前电脑是大端存储还是小端存储数据。

 

小字节向大字节类型赋值时

无符号类型,高位直接填充0

有符号类型,高位填充符号位

-1  -》 1000  0001  -》1111 1110 –》1111  1111

例题:

Char b = 3;    ->0000 0011

Short c = b;    ->0000 0000  0000 0011

char b = -3;   ->1000 0011 -> 1111 1100  -> 1111 1101

Short c = b;   ->1111 1111 1111 1101

 

习题

  1.  65543转换为2进制,8进制,16进制

65543  …  1

32771  …  1

16385  … 

字节单位转换

1KB          =   1024B

1MB         =   1024KB

1GB          =    1024MB

1TB           =    1024GB

 

操作数, 运算符, 表达式,语句

4 + 7;

;空语句

If (表达式) 

   语句;

Else

      语句;

While(表达式)

      语句;

 

 

Int fun(void)

{

      Return 5;

}

Main()

{   

      Int num = 4+ fun();

      printf(“%d”, num);

}

小括号应用

(4+5)*(9-2)

 

5%1.2   4.5%2

C语言当中1表示真,0表示假

关系运算符只有真和假(1和0)两种结果

3 ==5   -》 0

5 > 1   ->   1

1 > 5   ->   0

 

输入:1234

输出:4321

1234%10  =》4

1234 /10 =》123

123 % 10 =》3

123/10  =》 12

12%10  =》2

12/10  =>  1

1 % 10  => 1

1/10  =》  0

 

自增自减运算符

Int i = 3;

Int a ;

a = i++;  a =3;  i= 4;

a = ++i;  a=4;   i=4;

5++; ?

(i+2)++;   ?

i = 3;

Printf(“%d, %d, %d, %d, %d”, i++, ++i, ++I, i++, --i);

i = ++i - ++i;

 

int num;

num = 5;

num = i+3;

double item = 3.1415926;

num = item;

=与==

num = 5;

if (num = 8)

      语句1;

else

      语句2;

 

左值,可以看成是一个变量,左值是一个可以改变里面存储数据的变量。

int a;

a = 4;

const int b;

b = 5;

3+4 = 1;

int a;

a = 123;

&a = 123;    &a è 0xffff8000

a += 3;  => a = a+3;   =>  3+=a;   3 = 3 + a;

 

 

短路操作

int  a = 5;

if (4 < 3 &&  a = 2)

      语句1;

else

      语句2;

printf(“%d ”, a);

 

计算数123的各位相加和。如1+2+3=6

123%10   = 3

123/10     = 12

12%10      =2

12/10        =1

1%10        =1

1/10          =0

 

 

加密字典,所有字符+10.,当相加和超过127,从32‘ ’空格字符从新开始排序。

I love you  =》   s*vy o*#y口

 

‘0’   ‘’

原文地址:https://www.cnblogs.com/zhuyaguang/p/4823734.html