C语言的概述以及数据类型

一、C语言的基本概述

    1C语言之父:丹尼斯·里奇

    2、语言的特点:①移植性好,适用于不同的平台

                 移植性:将代码拷贝运用到另一平台台时,所需要修改的的代码量越少

                         移植性越好

                   ②可以直接访问硬件

                   ③运行效率高

    3、内核基本都由C语言构成,少部分是汇编语言

       汇编的使用:对简单的硬件的初始化采用汇编

       C语言的使用:对硬件对复杂的变化时采用C语言

    4C语言:面向结构,操作的是具体事务,注重过程

       C++Java等:面向对象,具有很好的代码复用性(可以直接被调用,很少有修改的  

                    地方)、维护性(出错了容易找到错误的地方)、扩展性(增加新功能

                    的时候不需要修改原来的代码)

    5C语言的标准:c89c99c11k&RC

二、数据类型

1、定义:数据集合的划分,不同的数据类型对CPU的意义不一样

2、隐式类型转换:char

3、字节单位的转换:1=4字节=32bit
                       1半字=2字节=16bit

   数据类型的字符长度:char    1字节
                           short   2字节
                           int     4字节
                           float    4字节
                           long    4字节
                           double  8字节

   补:指正是保存地址的,而地址的长度是固定的,地址的长度是由操作系统决定的,

       因此在32位系统中任何类型的指正都是4字节
    4unsigned char取值范围:0~255

   signed char 取值范围是-128~127

   负数的补码:符号位为1,取绝对值,算绝对值的原码,然后绝对值的原码取反加1
       举例:

   -1的补码:|-1|=1

             1去处符号位的原码是:000 0001   
                 将上述原码取反:111 1110
                 再加1:111 1111
                 加上-1的符号位1,则得出-1的补码:1111 1111

5、sizeofstrlen的区别:

       StrlenAstrlen函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个

                '\0',如果你只定义没有给它赋初值,这个结果是不定的,它会从首地址一

                直找下去,直到遇到'\0'停止

              Bstrlen只能用char*做参数,且必须是以''\0''结尾的

              Cstrlen的结果要在运行的时候才能计算出来,是用来计算字符串的长度,

                 不是类型占内存的大小

       SizeofAsizeof()返回的是变量声明后所占的内存数,不是实际长度,此外sizeof

                 不是函数,仅仅是一个操作符

              Bsizeof可以用类型做参数,也可以用函数做参数

              Csizeof后如果是类型必须加括弧,如果是变量名可以不加括弧。这是因

                 为sizeof是个操作符不是个函数。

              D、当适用了于一个结构类型时或变量, sizeof 返回实际的大小,当适用一

                  静态地空间数组, sizeof 归还全部数组的尺寸。

    6、数据类型的分类

 

 

数据类型

 

 

基本数据类型

空类型

字符型

数值型

实型

单精度实型

双精度实型

整形

短整型

无符号短整型

有符号短整型

整形

无符号整形

有符号整形

长整型

无符号长整形

有符号长整形

复合数据类型

数组

结构

联合

枚举

指针





你可能感兴趣的:(Linux)