(一)C语言之基本数据类型

首先讲一点点程序开发的往事(听狄泰唐老师的课根据自己的理解所描述的,只是为了方便自己理解,不一定准确):在汇编时代,c语言还没诞生的时代,我们的程序员只能用汇编语言来编程,所以在汇编语言中,是没有数据类型的概念的,那我们如何操作内存呢?方法就是利用内存的起始地址,内存的大小.然后,久而久之,在编程的过程当中,我们会经常用到比如4个字节大小的内存,2个字节大小的内存等等.所以当我们每次需要操作内存的时候都需要去知道我要操作的2个字节的内存大小的起始地址等等,这样就显得很麻烦,比较容易出错.所以当C语言诞生的时候,在C语言中就出现了数据类型的概念.这个数据类型就是将我们经常使用的内存大小起一个名字,使我们对内存的操作和使用更加方便,比如4字节的叫做int,1字节的叫做char...等等.

那么在了解了这一段简单的往事过后,对数据类型的认识应该是怎样的呢?

1:数据类型可以理解为固定内存大小的别名: int就代表1个字节,short代表2个字节,char代表1个字节.....

2:数据类型是创建变量的模子:相当于把数据类型当成模子往内存里一放,就可以根据这个数据类型得到对应大小的内存.比如说int这个模子,往内存里"一放"就可以创建一个4字节大小的变量.

 1 #include <stdio.h>
 2
 3 int main()
 4 {
 5   char c = 0;
 6   short s = 0;
 7   int i = 0;
 8
 9   printf("%d,%d/n",sizeof(char),sizeof(c));
10   printf("%d,%d/n",sizeof(short),sizeof(s));
11   printf("%d,%d/n",sizeof(int),sizeof(i));
12
13   return 0;
14 }

通过数据类型这个模子创建出来的,就是变量,那么变量的本质是什么?

1:变量是一段实际连续存储空间的别名.

2:程序中通过变量来申请并命名存储空间.

3:通过变量的名字可以使用存储空间.

4:变量隶属于某一种数据类型.

5:变量所在的内存大小,取决于扮靓所属的数据类型.

#include <stdio.h>

typedef int INT32;
typedef unsigned char BYTE;
typedef struct _tag_ts
{
    BYTE b1;
    BYTE b2;
    short s;
    INT32 i;
} TS;

int main()
{
    INT32 i32;
    BYTE b;
    TS ts;

    printf("%d, %d\n", sizeof(INT32), sizeof(i32));
    printf("%d, %d\n", sizeof(BYTE), sizeof(b));
    printf("%d, %d\n", sizeof(TS), sizeof(ts));

    return 0;
}
时间: 2024-10-26 16:21:50

(一)C语言之基本数据类型的相关文章

Go 语言的基本数据类型

Go 语言的基本数据类型 0)变量声明 var 变量名字 类型 = 表达式 例: var num int = 10 其中“类型”或“= 表达式”两个部分可以省略其中的一个. 1)根据初始化表达式来推导类型信息 2)默认值初始化为0. 例: var num int // var num int = 0 var num = 10 // var num int = 10 1)整型 1.1)整型类型 类型名称 有无符号 bit数 int8 Yes 8 int16 Yes 16 int32 Yes 32

黑马程序员_01_Java语言基础部分(数据类型与表达式、流程控制语句、数组与方法)

------- android培训.java培训.期待与您交流! ---------- Java语言主要由5中符号组成 标识符:数字.字母.美元符.下划线(注意不能数字开头) 关键字:goto和const保留了它们,但是Java没有使用. 运算符:注意运算符优先级(左结合和右结合要注意) 分隔符:注意+号可以分割字符串. 注释:三种注释. 数据类型与变量 常量: 整型 浮点型 字符:注意后面跟三个八进制(\ddd)和 四位unicode码(\u8bf7) (不区分大小写) 字符串 布尔型 变量:

Android For JNI(二)——C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器

Android For JNI(二)--C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器 当我们把Hello World写完之后,我们就可以迈入C的大门了,今天就来讲讲基本的一些数据类型,函数之内的 我们先来看一张传播久远的图片' 一.各种数据类型介绍 整型 整形包括短整型.整形和长整形. 短整形 short a=1; 整形 一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的存储顺序是地位在前.高位在

C语言的基本数据类型长度

PS:以下内容是在Xcode的编辑器64位环境下的测试结果,网上有关于64位和32位各数据类型存在的差异,请自行online search. main.m 1 #import <Foundation/Foundation.h> 2 void basicDataTypeInC() { 3 NSMutableString *mStrInfo = [[NSMutableString alloc] init]; 4 //(数值类型->整型)整型:-2147483648至2147483647 5

C语言学习(二)--数据类型

基本数据类型 C语言的基本数据类型是:整型.字符型.单精度浮点型.双精度浮点型. 类别 类型名 数据长度 字符 char 8位 短整型 short int.unsigned short int 16位 整型 int.unsigned int 32位 长整型 long int.unsigned long int 32位 单精度浮点型 float 32位 双精度浮点型 double 64位   枚举类型 枚举类型就是指它的值为符号常量而不是字面值的类型.声明形式: enum Door_Type {O

2_C语言中的数据类型 (三)整数与无符号数

1.1       sizeof关键字 sizeof是c语言关键字,功能是求指定数据类型在内存中的大小,单位:字节 sizeof与size_t类型 1.1       int类型 1.1.1          int常量,变量 int就是32位的一个二进制整数,在内存当中占据4个字节的空间 1.1.2          printf输出int值 %d,输出一个有符号的10进制整数,%u,代表输出一个无符号的十进制整数 1.1.3          printf输出八进制和十六进制 %x,代表输出

C语言笔记之数据类型(三)

浮点型数据 一.非整数的表示 除了整数,平时的计算也离不开非整数,即带有小数部分的那些数.在数字系统中,整数和非整数合称为有理数,有理数和无理数合称为实数(好吧,这和本文主旨没关系,但为了显示一下我曾经是数学系的学生...) 非整数由一个"."号来凸显,十进制表示法中,"."号左边的数字的权为10的正整数幂,幂值按离小数点的距离远近依次为0.1.2...而右边为10的负整数幂,幂值由近及远依次为-1.-2.-3... 例如:12.25 = 1 * 10 ^ 1 +

C语言简单整理-数据类型

在我们玩游戏的时候,游戏中的角色是有类型的,有敏捷型.力量型.法术型等等.同样C语言中的数据也是有类型的,C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类.如图所示: 这里我们先给大家讲解基本数据类型中最简单也是最常用的整型.实型与字符型. 整型数据是指不带小数的数字.生活中有很多信息适合使用整型数据来表示,比如:人的年龄.班级的人数.书的总页数等等.因此整型的类型比较多: 注:int.short int.long int是根据编译环境的不同,所取范围不同.而其中sh

R语言编程艺术# 数据类型向量(vector)

R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用typeof(x)函数查询. > #插入向量元素 > x <- c(88,5,12,13) > x [1] 88 5 12 13 > x <- c(x[1:3],168,x[4]) #插入168数字在13之前 > x [1] 88 5 12 168 13 > 2.

C语言的基本数据类型

C语言允许使用的数据类型有三类. (1)    基本类型.不可再分的最基本的数据类型,包括整型.浮点(单精度)型.双精度型.字符型.无值类型.逻辑型及复数型.基本类型通常代表单个数据. (2)    构造类型.由已知的基本类型通过一定的构造方法构造出来的类型,包括数组.结构体.联合体.枚举类型等.构造类型通常代表一批数据. (3)    指针类型.指针可以指向内存地址,访问效率高,用于构造各种形态的动态或递归数据结构,如链表.树等. 1.1    基本数据类型 1.基本数据类型及其关键字 C99