很早以前,就有人称C语言为“中级语言”——“汇编语言”太接近底层,可以称为低级语言;而Java、、Go这些语言更接近我们的逻辑思维,可以称为高级语言;C语言既可用于底层操作,又兼顾我们的逻辑思维,因此被称为中级语言。
中级语言非常形象地描述了C语言的特点,学习C语言,可以让您领略与Java、、Go语言不同的风景。咱们先通过数据类型来感受一下吧!
本文的操作基于环境,使用gcc作为编译器。
第1步:启动
第2步:输入pwd命令,您可以看到当前的路径是/home/
第3步:输入mkdir 命令,建立目录
第4步:输入cd 命令,进入到子目录
第5步:的/home//目录,也就是的C:\home\目录,我们在这个目录中用记事本,建立.c文件,内容如下:
#include
#include
#include
int main()
{
char pcString[10];
char cChar;
int8_t i8Integer;
int16_t i16Integer;
int32_t i32Integer;
strcpy(pcString, "ABCD");
cChar = *pcString;
i8Integer = *(int8_t*)pcString;
i16Integer = *(int16_t*)pcString;
i32Integer = *(int32_t*)pcString;
printf("pcString is [%s]n", pcString);
printf("cChar is [%c]n", cChar);
printf("i8Integer is [%d]n", i8Integer);
printf("i16Integer is [%d]n", i16Integer);
printf("i32Integer is [%d]n", i32Integer);
return 0;
}
第6步:在中输入gcc .c -o 命令,编译自己编写的程序
第7步:执行编译命令后,发现C:\home\目录中生成了.exe文件
第8步:在中输入./执行生成的可执行程序,得到下面的结果
$ ./DataType
pcString is [ABCD]
cChar is [A]
i8Integer is [65]
i16Integer is [16961]
i32Integer is [1145258561]
至此,程序编写完毕,我们开始解释程序的含义:
(1)我们定义了一个字符串类型,内容是“ABCD”;
(2)如果我们把当成字符串,它就是“ABCD”;
(3)如果我们把当成字符,它就是‘A’;
(4)如果我们把当成-128~+127范围的整数,它就是65;
(5)如果我们把当成-32768~+32767范围的整数,它就是16961;
(6)如果我们把当成-~+-范围的整数,它就是。
说到这里,您可能弄糊涂了,字符串怎么变成忽大忽小的整数了?
前面说过,C语言是中级语言,可以直通计算机硬件层,在计算机的存储器中,根本就没有ABCD、65、16961这些东西,这些是我们调用C语言的函数,按我们的要求在屏幕上画出来的,存储器中只有这样枯燥的二进制比特位:
这些二进制的比特位,不仅可以表示字符串、字符、整数、小数,还可以表示图像、声音、视频等各种信息,而字符串、字符、整数、小数、图像、声音、视频都可以在广义概念上被称为数据类型。
咱们用自己的方式,对数据类型做一个总结吧:让计算机对一串二进制比特位进行解释和计算的方式。
写到这里,我们戛然而止吧,因为您现在最需要的是思索和消化
———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666