初识C语言

一,数据类型:

  1. char         //字符数据类型
  2. short        //短整型

  3. int            //整型

  4. long         //长整型

  5. long long //更长的整型 

  6. float         //单精度浮点型

  7. double     //双精度浮点型 

 

sizeof的单位是字节byte

sizeof(long)>=sizeof(int)

二,常量变量:

1.变量的分类

  • 局部变量(大括号内部使用的)
  • 全局变量(大括号外部使用的)

PS:当局部变量和全局变量同名时,局部变量优先使用

 2.变量的作用域和生命周期

  • 局部变量的作用域是变量所在的局部范围
  • 全局变量的作用域是整个工程
变量的生命周期指的是变量的创建到销毁之间的一个时间段
  • 局部变量的生命周期是进入作用域生命周期开始,出作用域生命周期结束
  • 全局变量的生命周期是整个程序的生命周期

 3. 常量

C语言中常量分为以下几种:

  • 字面常量
  • const修饰的常变量(修饰之后的变量不能直接被改变,但本质上还是变量,所以叫常变量)
  • #define定义的标识符常量
  • 枚举常量(默认从0开始,依次递增)

4.字符串+转义字符

  • 字符串的结束标志是\0的转义字符,计算字符串长度时\0是结束标志,不算做字符串内容
  • 转义字符在需要转义的字符前面加上\
    \dddddd表示1~3个八进制数字
    \xdddd表示2给十六进制数字

5.操作符

  • 移位操作符:》《

移动的是二进制位

  • 位操作符:

&按位与

|  按位或

^按位异或

~按(二进制位)位取反:把所有二进制中的数字1变成0,0变成1

  • 原码,反码,补码

负数的计算

原码——>反码(符号位不变,其他按位取反)符号位是二进制中的第一位

反码——>补码(反码+1)

正整数:原码,反码,补码相同

  • 条件操作符(三目操作符)

?:(a?b:c)

a成立,b计算,整个表达式的结构是b的结果

a不成立,c计算,整个表达式的结构是c的结果

6.常见关键字

  •  auto(是自动的 - 每个局部变量都是auto修饰的)
  • extern(是用来申明外部符号的)
  • register(寄存器关键字)
  • signed(有符号的如:10,-20)
  • unsigned(无符号的)
  • union(联合体,共用体)
  • void(无-空)
  • typedef(类型重定义!)
  • static(静态的!!!)

static修饰局部变量,改变了的局部变量的生命周期(本质上改变了变量的存储类型)

static修饰全局变量,使得这个全局变量只能在自己的源文件(.c)内部使用,其他源文件不能使用!在其他源文件内部可以被使用,是因为全局变量具有外部链接属性,但被static修饰之后变成了内部链接属性,其他源文件不能链接到这个静态的全局变量!

static修饰函数,使得函数只能在自己源文件使用,不能在其他源文件使用,本质上static是将函数的外部链接属性变成了内部链接属性(和static修饰全局变量一样!)

7.指针

  • 内存

内存的编号是由电信号转换成数字信号:1和0组成的二进制序列。一个内存单元是一个字节

  • 指针
int main()
{
    int a = 10;//a在内存中要分配空间,4个字节

    int * pa = &a;//pa是用来存放地址的,在C语言中叫指针变量

    //* 说明pa是指针变量,int 说明pa执行的对象是int类型

    return 0;
}

指针是用来存放地址的!指针的大小是相同的!指针需要多大空间取决于地址的存储需要多大空间

8.结构体

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值