【C 语言】从0基础开始到熟练掌握【详细篇共9部分】(持续更新......当前:1)
目录C语言主要学习内容C语言学前储备知识1.计算机如何执行C语言程序2.计算机中数据的单位3.进制转换初识C语言1.为什么要学C语言/C语言的优势2. 语言标准3.使用C语言的7个步骤一、基本数据类型、表达式及运算符1.C语言中的数据类型2.基本数据类型整型字符型浮点型缺省类型空类型void泊尔类型bool二、常用输入输出函数三、流程控制分支结构、循环结构四、函数五、数组六、指针七、构造数据类型八、内存管理、位运算九、程序调试方法摘要本文从C语言的基础概念入手逐步深入到核心语法和编程实践。首先介绍C语言的学习内容和学前储备知识然后详细讲解基本数据类型、表达式及运算符接着覆盖输入输出函数、流程控制、函数、数组、指针等核心内容最后讨论构造数据类型、内存管理和程序调试方法。每个章节都配有清晰的解释和实用的示例帮助你更好地理解和掌握C语言编程。C语言主要学习内容1.基本数据类型、表达式及运算符2.常用输入输出函数3.流程控制分支结构、循环结构4.函数5.数组6.指针7.构造数据类型8.内存管理、位运算9.程序调试方法C语言学前储备知识1.计算机如何执行C语言程序计算机组成部分运算器、控制器、输入设备、输出设备、电源运算器控制器——CPU (GPU/NPU)储存器内存掉电数据丢失、空间小、价格贵硬盘掉电数据不丢失、空间大、读写效率低cache告诉缓存设备寄存器编译器编译的二进制指令集合存放在硬盘中当执行该二进制程序时该程序通过cpu被加载在内存中cpu通过总线访问内存中的数据并做运算和处理2.计算机中数据的单位bit 位 0/1byte 字节计算机内存储存单位 8bitKb k字节 1024byteMb 1024 KbGb 1024 MbTb 1024 Gb3.进制转换二进制B八进制O十进制D十六进制前缀0x 后缀H二进制、八进制、十六进制转十进制权柄的n次方乘系数相加的总和。十六进制——十进制八进制——十进制 0123——108^0*38^1*28^2*183二进制 ——十进制 1010 1101——102^0*12^1*02^2*12^3*12^4*02^5*12^6*02^7*114832128173先转为十六进制再转十进制173D——0xad——16*1013173二进制转八进制、十进制、十六进制二进制——十六进制 1010 1101——168421码四个为一组一组为一位直接得出0xad二进制——十进制先转为十六进制再转十进制173D——0xad——16*1013173二进制——八进制三个为一组一组为一位十进制转其他进制短除法当然在C程序中既可以使用和显示不同进制的数。不同的进制要使用不同的转换说明。以十进制显示数字使用%d;以八进制显示数字使用%o:以十六进制显示数字使用%x。另外要显示各进制数的前缀0、0x和0X必须分别使用%#o、%#x、%#X。例如《C Primer Plus (第六版) 中文版》中示例​​​​​初识C语言1.为什么要学C语言/C语言的优势与python和Java等其他语言相比的优势1.高效性2.可以直接控制操作硬件C语言具有通常是汇编语言才具有的微调控制能力3.资源开销小4.跨平台可移植性强《C Primer Plus (第六版) 中文版》书中提到“由于C语言与UNIX关系密切UNIX系统通常会将C编译器作为软件包的一部分。安装Linux时通常也会安装C编译器。供个人计算机使用的C编译器很多运行各种版本的Windows和 Macintosh(即Mac)的PC都能找到合适的C编译器。因此无论是使用家庭计算机、专业工作站还是大型机都能找到针对特定系统的C编译器。”2. 语言标准第1个ANSI/ISOC标准C99C113.使用C语言的7个步骤一、基本数据类型、表达式及运算符1.C语言中的数据类型基本数据类型整型字符型浮点型缺省型空类型void泊尔类型bool构造数据类型指针类型2.基本数据类型在学习数据类型之前我们可以先学习两个关键字和转义字符、格式控制符、格式修饰符有助于学习不同数据类型的大小。运用sizeof( )关键字可以获取数据类型在内存中所占的字节数。运用printf( )可以在终端打印引号内的内容。转义字符是通过特定的符号序列表示特殊字符或操作的方式常用于处理不可打印字符或具有特殊意义的字符。表格来源《C Primer Plus (第六版) 中文版》格式控制符也被称为格式化字符串或格式化标识符。它们是用于指定数据格式的特殊字符序列。表格来源《C Primer Plus (第六版) 中文版》整型整型数据如int、short、long在内存中以补码形式存储。有符号整型可以表示正数也可以表示负数最高位为符号位0正数 1负数其他位位数据位正数的补码原码 负数的补码反码-1例如-2026原码1000 0111 1110 1010反码1111 1000 0001 0101补码1111 1000 0001 0110无符号整型仅能表示正数最高位为符号位整型数据的溢出unsigned short 最大值1?最大值1----》最小值最小值-1-.--》最大值●short短整型内存中2字节无符号0000 0000 0000 0000(最小值0) ——1111 1111 1111 1111(最大值65535)有符号1000 0000 0000 0000(最小值-32768) ——0111 1111 1111 1111(最大值32767)●int整型内存中为4字节●long长整型内存中为8字节总结初学C语言时int类型应该能满足大多数程序的整数类型需求。尽管如此还应了解一下整型的其他形式。C语言提供3个附属关键字修饰基本整数类型:short、long和unsigned。应记住以下几点。short int类型(或者简写为short)占用的存储空间可能比int类型少常用于较小数值的场合以节省空间。与int类似short是有符号类型。l ong int或long占用的存储空间可能比int多适用于较大数值的场合。与int类似long是有符号类型。long long int或long long(C99标准加入)占用的储存空间可能比long多适用于更大数值的场合。该类型至少占64位。与int类似long long是有符号类型。unsigned int或unsigned只用于非负值的场合。这种类型与有符号类型表示的范围不同。例如16位unsigned int允许的取值范围是0~65535而不是-32768~32767。用于表示正负号的位现在用于表示另一个二进制位所以无符号整型可以表示更大的数。在C90 标准中,添加了 unsigned long int 或 unsigned long 和 unsigned int 或 unsignedshort 类型. C99 标准又添了 unsigned long long int 或 unsigned long long.在任何有符号类型前面添加关键字signed可强调使用有符号类型的意图。例如short、shortint、signed short、signed short int 都表示同一种类型.字符型在所有的编程语言中字符型数据都是以ASCII码(美国信息交换标准代码)的形式保存每一个字符都对应着一个编码这个编码其实是一个整数来的编码范围0 ~ 127。因此字符型数据也可以当作整形数据进行运算。ASCII码表如下浮点型用来表示小数的数据类型。单精度浮点型float● 精度范围6-8位●内存中占的字节数4● IEEE标准规定double类型在内存中符号位1bit、指数位8bits、尾数位23bits方式存储。8.125符号位01000.001——1.000001 2^3指数位1273130——1000 0010尾数位00000100000000000000000内存位0100 0001 0000 0010 0000 0000 0000 00000x41020000双精度浮点型double●精度范围12-16位●内存中占的字节数8●IEEE标准规定double类型在内存中符号位1bit、指数位11bits、尾数位52bits方式存储。8.125符号位01000.001——1.000001 2^3指数位102331026——100 0000 0010尾数位00000100000000000000000....(1后有46个0)内存位0100 0000 0010 0000 0100 0000 0000 0000....0x40204000...注意浮点数据在储存时可能出现精度损失。缺省类型空类型void函数的形参和返回值不返回参数、不返回数据。用在函数和指针部分目前暂做了解泊尔类型空类型bool结果true/false#includestdio.h #includestdbool.h int main(){ bool a true; bool b false; printf(sizeof(a):%d true:%d false:%d\n, a, a, b); return 0; } //输出结果 sizeof(a):1 true:1 false:0二、常用输入输出函数三、流程控制分支结构、循环结构四、函数五、数组六、指针七、构造数据类型八、内存管理、位运算九、程序调试方法

相关新闻