RSS订阅 | 匿名投稿
您的位置:网站首页 > 相关知识 > 正文

适合C语言小白看的基础知识梳理总结

作者:habao 来源: 日期:2019-10-6 9:20:12 人气: 标签:c基础知识

  C语言是当代人学习及生活中的必备基础知识,应用十分广泛,下面为大家带来C语言基础知识梳理总结,C语言零基础入门绝对不是天方夜谭!

  一、顺序结构、选择结构、循环结构;二、循环结构又分为while型、until型、for循环结构;程序流程图;

  变量:C语言标志符只能由字母、数字和下划线三种字符组成,且第一个字符必须是字母或者下划线;必须先定义后使用;每一个变量被定义以确定类型后,在编译时就能为其分配相应的存储单元;

  整形变量:数据在内存中存放形式是以二进制形式存放;有int型、short int型和long int型,无符号整型变量的范围是-32768—32767,有符号型为0~65535.通常把long定义为32位,把short定义为16位,int可以是32位也可以为16位,这都主要取决于机器字长。

  实型变量:实数型数据在内存中的存放形式,一般在内存中占4个字节,分成整数部分和小数部分存放。实型变量分为float型、double型long double型。实型数据会存在舍入误差。

  字符型数组:(一)字符常量:转义字符(\n——换行,\t——tab,\r——回车,\f——换页,\b——退格,\ddd——1到3位8进制的数代表的字符)

  一维数组的定义:类型说明符 数组名【常量表达式】;先定义后引用;一维数组初始化时可以只对一部分元素初始化,在对全部数组元素初始化的时候可以部长度;但是若被定义的数组长度与提供的初始值不一样时,则数组长度不能省略。

  二维数组的定义:类型说明符 数组名【常量表达式】【常量表达式】C语言中存放二维数组是先存放第一行的元素,紧接着是第二行,其实也是以一维的方式存放。如果初始化时能指定所有元素的初始值,第一维大小可以省略,但是第二维不能省略。

  字符数组:定义和初始化跟数组差不多,只是需要加单引号。字符和字符串结束标志,C语言,以‘\0’代表。

  (1) 在定义函数中指定的形参,在未出现函数调用时,他们并不占用内存中的存储单元,只有发生调用时,才会分配内存。

  (5) C语言,实参变量对形参变量的数据传递是“值传递”,即单向传递,只有实参传递给形参,而不能由形参传递给实参。

  希望通过函数调用使主调函数得到一个确定的值。(1)函数的返回值是通过函数中的return语句获取的。(2)函数值的类型;(3)如果函数值的类型和return语句中表达式的值不一样,则以函数类型为准。(4)如果调用函数中没有return语句,并不带回一个确定的用户需要的值,函数不是不带回值,而只是不带回有用的值,带回一个不确定的值。(5)如不需要带回任何值,用void。

  2、如果使用库函数,一般应该在本文件开头用#include命令将调用有关库函数时在所需要用到的信息“包含”到本文件中。.h文件是头文件所用的后缀。

  3、如果使用用户自己定义的函数,而且该函数与使用它的函数在同一个文件中,一般还应该在主调函数中对被调用的函数做声明。

  5、如果已在所有函数定义之前,在函数的外部已做了函数声明,则在各个主调函数中不必多所调用的函数在做声明。

  (一)局部变量在一个函数内部定义的变量是内部变量,它只是在本函数范围内的有效,主函数也不能使用其它函数中定义的变量;不同函数中可以使用相同的名字的变量,他们代表不同的对象,互不干扰;形式参数也是局部变量;在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效,这种复合句也可以称为“分程序”或“程序块”;(二)全局变量,在函数之外定义的变量称为外部变量,全局变量可以增加函数间数据联系的渠道,一般不再必要时不要使用,他在程序的全部执行过程中占用存储单元,是函数的通用性,使用全局变量会使程序的清晰性降低。还要注意若果同一源文件中,外部变量和局部变量同名,则在局部变量作用范围内,外部变量被“屏蔽”,不起任何作用。

  (变量值存储时间)动态存储方式,在程序运行期间进行分动态的分配存储空间的方式,静态存储方式是指在程序运行期间分配固定的存储空间的方式;存储空间分为程序区、静态存储区和动态存储区;全局变量全部放在静态存储区中,程序开始时分配空间,完毕时;动态存储区中存放以下数据:1、函数形式参数;2、自动变量;3、函数调用时的现场和返回地址;在C语言中每个变量和函数都有两个属性,是数据类型和数据存储类型,存储类别是数据在内存中存储的方式。

  存储方式分为静态和动态存储类,具体包含有四种:自动的(auto),静态的(static),寄存器的(register),外部的(extern),如果不加以声明,就自认为是auto型就会自动分配存储空间属于动态存储方式。Static声明局部变量是在函数调用结束后不消失而保留原值,即占用存储单元不,在下一次调用该函数时,该变量已有值,就是上次函数调用结束时的值。其中需要说明的是在定义局部变量不赋初值的话,则静态局部变量编译时自动赋值为0或者空字符,虽然静态局部变量在函数调用结束后仍然存在,但是其他函数不能引用它的。静态局部变量主要用在当初始化后,变量只是被引用而不改变其值。Register变量是C语言中允许将局部变量的值放在CPU中的寄存器中需要时直接从寄存器中取出来参加运算,不必再到内存中提取,但是计算机系统中寄存器数量有限,不能任意定义任意多的存储器,局部静态变量不能定义为寄存器变量。Extern声明外部变量,用以扩展外部变量的作用域。

  在一个文件中,如果定义之前的函数想引用该外部变量,则应该在引用之前用关键字extern对该变量做外部变量声明。在多文件中,也可以采用extern声明的办法进行外部变量声明。有时希望某些局部变量只限于被本文件引用,而不能被其他文件引用,这时就可以采用在定义外部变量时外加一个static,这在程序模块化设计中加强了通用性。Static来声明一个变量的作用有二个,一个是在声明对局部变量时。则为该变量分配的空间在整个程序执行期间始终存在;一个是在对全局变量声明中,该变量的作用域仅限于本文件模块操作。注意:这些方法同样适用于函数的声明

  文章出处:【微信号:wujianying_danpianji,微信号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

  云龙51单片机视频教程目前国内的最好的视频教程,通俗易懂,容易上手,非常适合初学者,被大量的培训机构采用。只要你认真看,认真听,让你学发表于08-02 00:00•次阅读 -->

  15156次 阅读存储扩展传统测试方法挑战This white discusses the limitations of the traditional test methodology, and why a new way of testing these devi...发表于09-25 16:40•次阅读 -->

  13次 阅读如何采用串口通信的连接方式和C语言编程实现串口通讯RS232串行接口属于个人计算机(PC)及电信应用领域中最为成功的串行数据标准。它被定义为一种在低速....发表于09-25 15:53•次阅读 -->

  28次 阅读单片机按键扫描程序的设计不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和....发表于09-25 15:44•次阅读 -->

  30次 阅读微软OneDrive扩容计划购买,有多种价格可选日前,微软OneDrive云盘负责人在推特上宣布,OneDrive扩容计划正式购买,全新计划允许....牵手一起梦发表于09-25 15:01•次阅读 -->

  53次 阅读嵌入式软件开发的语言是哪一种语言我们要明白嵌入式系统不是PC系统,是另一种操作系统。它包括硬件和软件两部分。发表于09-25 10:48•次阅读 -->

  10次 阅读如何将嵌入式的代码优化嵌入式代码优化,除了最基本的函数实现细节算法优化外,还有一些细节的处理。发表于09-25 09:34•次阅读 -->

  13次 阅读哪里可以免费实现C语言中的模糊逻辑控制器?嗨,有人知道在哪里可以免费实现C语言中的模糊逻辑控制器吗?是的,我知道AN600,但它是从1997和“不是最先进的”,因为它是汇...发表于09-25 06:22•次阅读 -->

  6次 阅读请问C语言中可以嵌套汇编语言吗?C语言中可以嵌套汇编语言?发表于09-25 05:55•次阅读 -->

  10次 阅读Caviar推出太空+泰坦尼克主题限量定制款Discovery系列新品随着 iPhone 11 的正式开售,Caviar 也极速地推出了自家的定制机型,可选 iPhone....牵手一起梦发表于09-24 16:01•次阅读 -->

  140次 阅读西部数据退出存储系统:出售IntelliFlash部门西部数据(Western Digital)公司本周宣布,已做出退出专用存储系统市场的战略决策,因为其....刘伟DE发表于09-23 11:24•次阅读 -->

  2368次 阅读手把手教你学51单片机C语言版免费下载全书一共 20 章,从第 1 章到第 18 章以实验为载体,从单片机最小系统和C语言基本语法开始....发表于09-23 08:00•次阅读 -->

  41次 阅读C语言常用基础116个程序设计实例资料免费下载本文档的主要内容详细介绍的是C语言常用基础116个程序设计实例资料免费下载包括了:从键盘上输入任意实....发表于09-23 08:00•次阅读 -->

  48次 阅读SSD市场竞争激烈,浪潮存储如何应对来自中国闪存市场的统计显示,2018年全球SSD的出货量达到2.05亿块,比2017年增长31%,预....发表于09-22 11:46•次阅读 -->

  37次 阅读海康存储现状分析从视频领域的巨头到固态盘的深度布局,海康威视的一举一动都备受业界关注,就在2019全球闪存峰会—....发表于09-22 10:28•次阅读 -->

  20次 阅读最具影响力的十大编程语言及背后的开发者详细介绍软件世界中有各种各样的编程语言,每年还会有新的语言出现,最近发布的编程语言就有Scala、Kotli....全球人工智能发表于09-21 10:11•次阅读 -->

  238次 阅读华为推出Mate30 RS保时捷设计手机,机身采用线日消息,华为在慕尼黑举办发布会,正式推出下半年旗舰产品——Mate30 系列。和往年Ma....牵手一起梦发表于09-20 15:55•次阅读 -->

  850次 阅读C陷阱与缺陷英文原版免费下载即使是C专家也会遇到一些需要数天时间来解决的问题。这本书通过展示C程序员是如何陷入麻烦的来帮助防止此....发表于09-20 08:00•次阅读 -->

  45次 阅读请问.C语言中可以嵌套汇编语言吗?.C语言中可以嵌套汇编语言?发表于09-20 05:55•次阅读 -->

  28次 阅读C++参考大全第四版PDF免费下载本书是根据著名C语言专家Herbert Schildt的著作翻译的。这是一本关于C++语言的百科全书....发表于09-19 11:54•次阅读 -->

  42次 阅读数据结构C语言版教程PDF免费下载《数据结构》是一门计算机专业基础课,各类计算机考试都禁不住要考它,专升本考试自然也不例外。我给学生辅....发表于09-19 08:00•次阅读 -->

  46次 阅读51系列单片机c语言程序设计手册3分享!51系列单片机c语言程序设计手册3 (17.02 MB )发表于09-19 04:36•次阅读 -->

  279次 阅读请问学单片机是否需要先学C语言?网友:学单片机是否需要先学C语言?是否需要先买C语言教材?是否是从VC++6.0的安装开始? 答:C语言的书,讲的是标准C,单...发表于09-19 04:35•次阅读 -->

  169次 阅读国内公有云服务市场逐渐向BAT聚拢近日,英国调研机构Canalys发布了2019年第二季度中国公有云服务市场报告,报告显示:阿里云Q2....牵手一起梦发表于09-18 16:34•次阅读 -->

  395次 阅读玩转C语言链表-链表各类操作详解链表概述链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个...发表于09-18 13:30•次阅读 -->

  584次 阅读ATK-OV2640摄像头模块的资料和基于STM32应用的C语言源代码免费下载本文档的主要内容详细介绍的是ATK-OV2640摄像头模块的资料和基于STM32应用的C语言源代码免....发表于09-18 08:00•次阅读 -->

  28次 阅读C语言游戏编程从入门到精通PDF免费下载本书以C语言游戏编程入手,以102个实例,近200个函数较为系统地介绍了C基于游戏编程与开发的方法与....发表于09-18 08:00•次阅读 -->

  70次 阅读Python的一些经典复习资料免费下载Python 是什么类型的语言? Python 是脚本语言脚本语言 (Scripting langu....发表于09-18 08:00•次阅读 -->

  38次 阅读详解file_formatHIVE高级-格式存储发表于09-18 06:21•次阅读 -->

  33次 阅读笨办C语言中文版电子教程免费下载这本书的目标是让读者掌握足够的C语言技能,从而可以自己用C语言编写程序或者修改别人的C语言代码,成为....发表于09-17 17:07•次阅读 -->

  78次 阅读手把手教你学51单片机C语言版PDF免费下载本书旨在培养和锻炼单片机系统实用开发技能,全书以实践为主线,让读者在一个个实践案例中逐步掌握单片机电....发表于09-17 16:41•次阅读 -->

  112次 阅读ATK QR二维码和条码识别库的模块资料和使用C语言代码合集免费下载ATK QR二维码和条码识别库的模块资料和基于STM32使用的C语言代码合集免费下载包括了:ATK_....发表于09-17 08:00•次阅读 -->

  45次 阅读嵌入式存储装置有什么创新?传统的观念认为存储装置不是很重要,一般使用者也常忽略它的存在,但当它出现问题时,往往损失很大。我们在开发存储装置上,对于...发表于09-17 06:04•次阅读 -->

  104次 阅读LABVIEW和LabWindows/CVI怎么解决硬件采集卡的瓶颈?LABVIEW和LabWindows/CVI二者都是NI的产品,属于虚拟仪器,做出来的效果都能让人怦然心动。 而且开发语言不同,前...发表于09-17 04:38•次阅读 -->

  55次 阅读使用Matlab与VB混合编程在弧齿锥齿轮SGM调整卡计算中的应用资料说明述几种Matlab与VB混和编程的方法,比较各自的优缺点,为使系统能脱离matlab,实现调整卡....发表于09-16 15:52•次阅读 -->

  56次 阅读8051单片机C语言创程PDF免费下载本书主要特色是边学边做,不是单纯的理论,各章节中规中矩,遵循由简到繁、循序渐进的编排方式。本书大....发表于09-16 15:22•次阅读 -->

  75次 阅读C语言算法和注释大全PDF免费下载本文档的主要内容详细介绍的是C语言算法和注释大全PDF免费下载包括了:1.10进制转2进制,二....发表于09-12 17:17•次阅读 -->

  102次 阅读单片机编程的常见问题解答C 语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使 用的一种计算机语言。缺点是占用....发表于09-12 16:11•次阅读 -->

  156次 阅读物联网中会使用哪些编程语言虽然Java是物联网开发中使用最多的语言,但是Java和Python在物联网开发的不同子域中紧随其后....发表于09-12 15:45•次阅读 -->

  149次 阅读51单片机自学笔记PDF免费下载本书以89S51系列单片机为载体,结合作者多年教学与指导大学生电子设计竞赛的经验编写而成。全书分三....发表于09-12 08:00•次阅读 -->

  97次 阅读使用CCS软件进行数字图像处理系统的设计的课程资料说明数字图像处理是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。图像处理最早出现于 20 世....发表于09-10 17:15•次阅读 -->

  80次 阅读MPU6050与单片机通讯的C语言源码免费下载本文档的主要内容详细介绍的是MPU6050与单片机通讯的C语言源码免费下载。发表于09-09 17:15•次阅读 -->

  75次 阅读MATLAB在大学物理实验教学中要什么样的作用?详细应用探讨“物理学”是一门以实验为基础的科学。物理实验教学,在培养学生科学素养、创新能力方面,起着非常重要的作....发表于09-09 17:15•次阅读 -->

  73次 阅读单片机C语言有哪些优越性?如何建立一个Keil C51项目随着单片机技术的不断发展,以单片机C语言为主流的高级语言也不断被更多的单片机爱好者和工程师所喜爱。使....Wildesbeast发表于09-08 11:43•次阅读 -->

  567次 阅读C语言函数中的传值和传指针到底有什么区别我们可能听过C语言中的传值和传指针,在其他语言中,也有传引用一说,那么他们到底有什么区别呢?如果你还....strongerHuang发表于09-08 10:14•次阅读 -->

  375次 阅读这两种存储形式,你选谁全闪or混闪?这是困扰很多企业IT部门的一个问题,全闪存储有着极致的性能,但由于在使用寿命、成本等方....发表于09-07 09:49•次阅读 -->

  95次 阅读51单片机的定时器C语言程序免费下载本文档的主要内容详细介绍的是51单片机的定时器C语言程序免费下载。发表于09-06 16:14•次阅读 -->

  85次 阅读IHS Markit:全球OEM半导体支出面临十年来最大幅度衰退预估全球顶尖OEM在2019年的半导体支出约为3166亿美元,较2018年下降7%。墨记发表于09-06 10:05•次阅读 -->

  6786次 阅读美光CEO访问紫光,韩国两大存储芯片公司变得据报道,美光CEO Sanjay Mehrotra近期访问了中国紫光集团,虽然并不知晓双方具体谈....电子发烧友网工程师发表于09-05 12:10•次阅读 -->

  589次 阅读10道C语言基础题及解答详解算法的时间复杂度是指执行这个算法所需要的内存空间,包括 3 个部分:输入数据所占的存储空间;程序本身....发表于09-05 08:00•次阅读 -->

  72次 阅读磁带设备焕发新生 30TB容量+750MB/s速度今天东芝发布了16TB容量的台式机及NAS硬盘,给需要大容量存储的玩家提供了另一种选择。实际上除了H....39度创意研究所发表于09-04 09:04•次阅读 -->

  415次 阅读C程序设计第四版PDF麻烦学长了由谭浩强教授著、大学出版社出版的《C程序设计(第4版)》是一本的学习C语言程序设计的经典教材....发表于09-02 08:00•次阅读 -->

  95次 阅读示波记录仪波形数据存储ZDL6000示波记录仪在示波模式下能记录2Gpts数据。采集到数据后,怎么将数据导出做二次分析?Z....发表于09-01 10:55•次阅读 -->

  51次 阅读视频存储的挑战大数据时代加速来临,世界上不计其数的人制造出浩如烟海的数据,IDC和数据存储公司希捷发布的《数字化世....发表于09-01 10:50•次阅读 -->

  135次 阅读中国存储芯片逐渐起步 可望逐渐降低对外国存储芯片的依赖在早前长江存储宣布它已研发出64层NAND flash芯片之后,近日合肥长鑫也宣布已解决DRAM芯片....发表于08-30 14:08•次阅读 -->

  234次 阅读TCL编程初步中文PDF免费下载Tcl 全称是 Tool command Language。它是一个基于字符串的命令语言,基础结构和....发表于08-30 08:00•次阅读 -->

  72次 阅读嵌入式C语言中的union语法的作用是什么C语言中的结构体语法常重要,也常有用的,相信看了最近几节的读者应该明白。事实上,在实际的C语....发表于08-29 17:10•次阅读 -->

  96次 阅读单片机C语言编程与实例PDF免费下载《单片机C语言编程与实例》结合目前应用非常广泛的C语言以及Keil C51编译器,详细介绍单片机C语....发表于08-28 17:46•次阅读 -->

  185次 阅读嵌入式C语言语法中i++和++i的执行效率一样高吗i++;++i;就C语言代码来看,i++ 和 ++i 都只有一行,看起来似乎二者的执行效率一样了?其....发表于08-27 11:35•次阅读 -->

  131次 阅读C语言二叉树代码免费下载本文档的主要内容详细介绍的是C语言二叉树代码免费下载。发表于08-27 08:00•次阅读 -->

  84次 阅读采用射频的家庭娱乐遥控技术没有发展起来的原因是什么您的家庭娱乐系统看上去是不是和下图中的差不多?您的卧室里有没有电视机?您是否需要在床上找到一个合适的....电子发烧友网工程师发表于08-26 17:48•次阅读 -->和兵妹妹在机房

  

读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址:
上一篇:C++基础知识
下一篇:没有资料