从头开始-03.C语言中数据类型

基本数据类型

整形:


Int


4字节


%d / %i


Short


2字节


%hd


Long


8字节


%ld


Longlong


8字节


%lld


Unsigned


4字节


%

浮点型


单精度


Float


4字节


%f


双精度


Double


8字节


%lf

字符  char   1字节   %c

枚举:当一个变量只用几个固定的取值的时候使用枚举

  特点:先定义枚举类型,然后使用枚举类型定义枚举变量

  作用:提高代码的可读性,方便程序员之间的交流

  注意:枚举类型的实质是整形

  枚举定义的每一个成员都代表一个整形常量,默认情况下成员是从0开始,依次递增1.

构造类型

  数组:用于存放多个同种类型数据

    定义格式:数组类型 数组名称[元素个数] 

    1. 当我们定义的一个数组的时候系统会为这个数组开辟一个连续存储区域
    2. 数组名是数组的地址
    3. 系统是如何根据下标访问某个元素:首先根据数组的地址计算处理这个元素的地址,然后访问它存储空间  array的地址 + 下标 * 数组类型

  

  结构体:用于存放多个不同数据类型的数据的,若相同的数据类型可以表示特殊含义也使用结构体

    结构体作用:让数据结构化

    特点:

    1. 先定义结构体类型 然后在定义结构变量
    2. 结构体可以嵌套,但是不可以嵌套自己,但可以嵌套自己的指针
    3. 结构体作为函数参数传递是值传递
    4. 结构体指针作为函数参数传递是地址传递

  指针类型:指针就是地址,有了地址我们可以访问它所指向的存储空间

    指针变量:用于的存放地址变量

    定义格式:所指向的数据类型 *指针变量名称

     *作用:

    1. 定义变量的时候,它使一个类型说明符,说明定义的这个变量是一个指针变量
    2. 在非定义的变量的时候,他是一个操作符,访问指针所指向的存储空间

    &作用

    1. 作为单目操作符,它是取出变量的地址
    2. 作为双目运算符,它使按位与

指针与函数

1、指针作为函数参数传递是地址传递

2、指针函数:返回值为指针的函数

1、不可以返回局部变量的地址

2、可以返回常量的地址

3、可以返回堆中的地址

3、函数指针:指向函数的指针

定义一个函数指针

所指向的函数的返回值类型  (*指针变量名称)(所指向的函数的形参列表)

  结构体指针:指向结构体的指针

     struct 结构类型名 * 指针变量名称

      struct Person{ int age ;};

     struct Person p;

      struct Person *pp = &p;

      pp->age = 20;

字符串:

使用字符数组,存储在栈中,它里面字符是可以修改的

使用字符指针,存储在常量区,它是只读的

总结:

  1. 所有的数据类型都可以定义变量
  2. 所有的数据类型都可以作为函数参数
  3. 所有的数据类型都可以作为函数的返回值

从头开始-03.C语言中数据类型,布布扣,bubuko.com

时间: 2024-08-10 15:02:49

从头开始-03.C语言中数据类型的相关文章

Go 语言中数据类型的判断

Go 语言中数据类型的判断,本文介绍三种方法.方法一:使用i.(type)结合空接口(interface{}) func main() { v1 := "中国你好" v2 := 20 var v3 byte = 65 fmt.Printf("v1的数据类型为:%s\n", checkType(v1)) fmt.Printf("v2的数据类型为:%s\n", checkType(v2)) fmt.Printf("v3的数据类型为:%s\n

C语言中数据类型的长度

面试中C里面int长度经常会被问到,下面总结一下作为资料: 首先看看一般规定: 标准c规定,int长度等于机器字长,short的表示范围不能大于int的表示范围,long的表示范围不能小于int的表示范围.在32为平台上(所谓32位平台是指通用寄存器的数据宽度是32)编写代码,short一般是16位,而long和int是32位.而在16位平台,int 和 short 一般都是16位,而long是32位. 下面写代码实际测试一下: #include <stdio.h> #include <

&lt;limits.h&gt;c语言所有数据类型最大值和最小值的规定

ISO C标准对C语言中数据类型的大小做了要求,下表展示了这个要求,其中有不同数据类型的最小值的要求,也有在32bit和64bit操作系统下的实现. C语言数据类型大小规定与实现 名称 说明 可接受的最小值 32bit系统典型值 64bit系统典型值 CHAR_BIT char的位数 8 8 8 CHAR_MAX char的最大值   127 127 CHAR_MIN char的最小值   -127 -127 SCHAR_MAX signed char的最大值 127 127 127 SCHAR

从头开始-05.C语言中函数

函数: 完成特定功能代码段 特点:函数只有调用的时候才会执行 定义格式:返回值类型 函数名称(形参类型 形参名称,...){ 语句; ...  } 函数参数 形式参数:在定义函数的时候,函数名后面小括号中的参数 实际参数:在函数调用的时候,函数名后面小括号中的参数 注意点: 形参与实参必须一一对应 实参与形参的类型必须一致 基本数据类型作为函数参数传递是值传递 组作为函数参数传递是地址传递 指针作为函数参数传递是地址传递 结构体作为函数参数传递是值传递 返回值: return 作用: 1.结束函

从头开始-04.C语言中流程控制

分支结构: if语句:当条表达式满足的时候就执行if后面大括号中语句 三种格式: if,if else , if else if else 特点:1.只有一个代码块会被执行 2.若有else那么必有一个代码会被执行 3.一个if语句中只能以if开头,最多只能有一个else,可以有任意个else if switch(表达式){ case 常量: ... break; case 常量1: ... break; default: ... break; } : 使用场景:当一个变量只有几个固定的取值的时

从头开始-06.C语言中预处理指令

预处理指令 不带参数的宏定义: 格式: #define 宏名 值 作用:提高代码的可读性 在程序编译前把所有出现宏名标示的位置都替换为定义宏的时候,宏名后面的值 带参数的宏定义 格式 #define 宏名(参数列表) 参数表达式 作用:在编译之前,把所有出现宏名(x)地方,都替换成把 参数代入参数表达 我写带参数的宏定义的时候,需要把每一个参数和结果都使用()扩起来 条件编译: 格式: #if #elif #else #endif 作用:当条件满足的时候就编译它后的语句 注意点:条件编译必须以#

《黑马程序员》C语言中的基本数据类型 (C语言)

C语言中基本数据类型共分为三类:分别为整型.浮点型.和字符型. 整型(int): 整型数据包含了所有的整数,例如:20.15.-19.987等 浮点型(float\double): float:单精度浮点型,也是小数,比double的精确程度低,也就是说所能表示的小数位数比较少.为了跟double区分开来,float 型数据都是以f结尾的,比如8.26f.-3.19f.0.0f.需要注意的是,绝对不能有100f这样格式的,编译器会直接报错,只有小数才允许加上f. double:双精度浮点型,其实

C语言中的数据类型

C语言中基本的数据类型有: 整型: 分为有符号整型(signed)和无符号整型(unsigned ), 它们各自又可以分为 长整型(long), 短整型(short), 整型(int)和字符型(char), 所以结合起来一共有8种基本的整型结构: long/short/int/char/unsigned long/unsigned short/unsigned int/unsigned char; 浮点型:分为单精度 float , 双精度型:double; (补充:整型表示的数的范围: 说到了

数据处理程序语言中的基本数据类型

程序语言根据其设计目的不同,其侧重的基本数据类型也不同.JAVA.C#等语言被设计用来进行通用的应用程序开发,其基本数据类型是字符串.数字.布尔等原子数据类型,以及数组和通用对象.而SQL.PowerBuilder.R.集算器esProc等语言被设计用来进行数据处理,其基本数据类型是有结构的二维数据表对象.比如这句SQL:SELECT T1.id,T1.name,T1.value FROM T1 LEFT JOIN T2 ON T1.id=T2.id,这里的T1,T2以及计算结果就是这种数据类型