志在指尖
用双手敲打未来

c语言基础知识(入门书籍)

c语言基础知识

C言语入门程序helloworld
#include
注:在最新的C标准中,main函数前的类型为int而不是void
C言语的详细结构
简单来说,一个C程序便是由若干头文件和函数组成。
#include便是一条预处理指令,它的作用是告诉C言语编译系统在对C程序进行正式编译之前需做一些预处理作业。
函数便是实现代码逻辑的一个小的单元。
必不行少之主函数
一个C程序有且只有一个主函数,即main函数。
C程序便是履行主函数里的代码,也能够说这个主函数便是C言语中的唯一入口
而main前面的int便是主函数的类型
printf()是格局输出函数,这里就记住它的功用便是在屏幕上输出指定的信息
return是函数的返回值,依据函数类型的不同,返回的值也是不同的
\n是转义字符中的换行符。(留意:C程序必定是从主函数开端履行的)
写代码的良好习惯
一个阐明或一个句子占一行,例如:包括头文件、一个可履行句子结束都需求换行
函数体内的句子要有显着缩进,通常以按一下Tab键为一个缩进
括号要成对写,如果需求删除的话也要成对删除
当一句可履行句子结束的时分结尾需求有分号
代码中所有符号均为英文半角符号
程序解释——注释
注释是写给程序员看的,不是写给电脑看的。
C言语注释办法有两种:
多行注释:/*注释内容*/
C标识符
C言语规定,标识符可所以字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。在运用标识符时还有留意以下几点:
标识符的长度最好不要超越8位,因为在某些版本的C中规定标识符前8位有效,当两个标识符前8位相一起,则被认为是同一个标识符
标识符是严格区别大小写的。例如Imooc和imooc是两个不同的标识符
标识符最好挑选有意义的英文单词组成做到”见名知意”,不要运用中文
标识符不能是C言语的关键字。想了解更多C言语关键字的常识
变量界说与赋值
变量便是能够改动的量,而每个变量都会有一个姓名(标识符)。变量占据内存中必定的存储单元。运用变量之前必须先界说变量,要区别变量名和变量值是两个不同的概念。
变量界说与赋值的一般形式如下。
留意:在界说中不允许接连赋值,如下操作是不合法的。
inta=b=c=5;//不合法的赋值操作
变量的赋值分为两种方法:
先声明再赋值
声明的一起赋值
基本数据类型
C言语中的数据类型如下图所示。
最常用的整型、实型与字符型(char,int,float,double):
整型数据是指不带小数的数字(int,shortint,longint,unsignedint,unsignedshortint,unsignedlongint):
留意:
intshortintlongint是依据编译环境的不同,所取规模不同
而其间shortint和longint至少是表中所写规模,但是int在表中是以16位编译环境写的取值规模
别的c言语int的取值规模在于他占用的字节数,不同的编译器,规定是不一样
ANSI标准界说int是占2个字节,TC是按ANSI标准的,它的int是占2个字节的。但是在VC里,一个int是占4个字节的
浮点数据是指带小数的数字。
日子中有许多信息适合运用浮点型数据来表示,比方:人的体重(单位:公斤)、商品价格、圆周率等等。
因为精度的不同又分为3种(float,double,longdouble):
格局化输出句子
格局化输出句子,也能够说是占位输出,是将各种类型的数据按照格局化后的类型及指定的方位从核算机上显现。其格局为:
printf(“输出格局符”,输出项);
当输出句子中包括普通字符时,能够采用一下格局:
printf(“普通字符输出格局符”,输出项);
留意:格局符的个数要与变量、常量或者表达式的个数相对应。
不行改动的常量
在程序履行过程中,值不发生改动的量称为常量,比方:
在C言语中,能够用一个标识符来表示一个常量,常量在运用之前必须先界说,其一般形式为:
#include
符号常量不能够被改动。
主动类型转化
数据类型存在主动转化的状况。
主动转化发生在不同数据类型运算时,在编译的时分主动完成。
char类型数据转化为int类型数据遵循ASCII码中的对应值。

c

c语言基础知识入门书籍

1、《C言语程序规划:现代办法》(第2版)
本书最主要的一个意图便是经过一种“现代办法”来介绍C言语,书中着重规范C,着重软件工程,不再着重“手工优化”。本书分为C言语的根底特性、C言语的高档特性、C言语规范库和参考资料4个部分。每章结尾都有一个“问与答”末节给出一系列与该章内容相关的问题及答案,此外还包括适量的习题。
全部C言语电子书本和C言语入门根底常识PDF版获取
C言语书本和C言语入门根底常识PDF获取docs.qq.com/doc/DV1R2WnRPeGZhbktS
2、《C言语程序规划》(第2版)谭浩强版别
这本书堪称经典之作初学者学习可以看看,这个便是零根底入门学习C言语的,上手快。但也要坚持上机,要是只看书,不在电脑上运转一下看看,是永远学不会的。关键在实践!坚持!
3、《程序员修炼之道》
《程序员修炼之道》由一系列的独立的部分组成,涵盖的主题从个人职责、职业开展,直到用于使代码保持灵敏、并且易于改编和复用的各种架构技能。利用许多赋有娱乐性的奇闻轶事、有思想性的比方以及幽默的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大圈套。不管你是初学者,是有经历的程序员,仍是软件项目经理,本书都合适你阅览。
4、《C和指针》
看到书名很让人忧虑翻译的英语水平。实践否则,翻译的很好。只能说标题党了。看封面不难了解作者用pointers的意思吧,再说了书又不是只讲指针。书名用《C言语辅导》更好些,
这是一本全面的C言语入门书。当然入门的深度和高度都比国内的教材高太多了。所以,假如你能直接从这本书开端学的话,起点会比较高,当然能学懂的话,说明你很有才。
5、《Cprimerplus》(入门首选)
CprimePlus这本书看了两遍,练习题基本上都自己独立做完了。题目没怎样自动算法能力(毕竟不是算法的书),可是每个细节说的很清楚。初学者很简略找到决心的。学完cprimerplus之后可以来看上面谭大爷的书找过错。
6、《高质量程序规划攻略》(必定要看)
一个偶尔的机会接触了本书的第一版,引发了对软件工程的思考,让我很早就意识到代码规范的重要性,为往后学习打下了坚实根底,真的很感激这本书,虽然其内容都很简略,可是在我迷茫的时分真的给了我许多启迪。
7、《C/C++深层探究》
很不错的书,他的别的一本c规范:规范和完成也十分好。原创佳作~~言语的扩大成为C++,我们知道C言语是一种程式言语,而C++则为目标化言语,因而C++比C愈加接近人类的言语,因而第四代言语便是人类言语,这便是说人类也是依照程式来行动的,也是一种程式动物或许程式生物。人类依据必定的国际的部分而创造的言语本不与国际共同或许总共同,因而才有扩大,可是基本词汇只有这么多,因而没办法表述一切的事物,因而不得不将词汇表扩大至一切动静,这便是音乐的美丽,音乐便是现代言语的终究开展。可见音乐的重要性。
8、《从问题到程序》(最佳高校教材)
既合适初入门到的小子,也合适相见恨晚的匹夫.这儿不得不赞一下老裘借鉴得好,并且里边又简略提到不少CS里边的概念:
讲单词计数的时分顺带介绍了有限状态机;程序规划言语里的副作用,前条件,后条件,短路求值.习题也是很不错的,高斯消元,3n+1问题,约瑟夫环,完成一个简略”虚拟机”和”汇编器”还要弄单步执行功能不少openproblem.
风格谨慎,十分着重程序的健旺和安全,测验.越界拜访自始至终都在着重,后边还自己完成了个通用整数输入查看函数,还有通用过错信息处理函数,过错处理评论得很详细.代码简练,命名规范.老早就讲了函数,”着重经过函数笼统树立清晰结构的重要性”.提供大量的形式,实例和主张,教会初学者规划、权衡.内容不依赖任何详细C完成,评论IDE优点和害处.
二、C言语入门书本引荐之内核/驱动系列
1、《LinuxC编程一站式学习》
本书合适做零根底的初学者学习C言语的第一本教材,协助读者打下结实的根底。有必定的编程经历但常识体系不行完整的读者也可以对照本书查缺补漏,从而更深化地了解程序的作业原理。本书开始是为北京亚嵌教育研讨中心的嵌入式Linux体系工程师就业班课程量身定做的教材之一,也合适作为高等院校程序规划根底课程的教材。本书关于C言语的语法介绍得十分全面,对C99规范做了许多解读,因而也可以作为一本精简的C言语语法参考书。
2、《Linux内核规划与完成》(第3版)
这书估量慕名而来的人都会在第一时刻略感失望,首先书很薄,并且讲解不求深化。假如一个人在第一次翻阅此书的时分有这样的印象,那应该好好反省下自己是否太浮躁了。
LDK很合适在你体系地学习了OS理论之后,直接看代码详解又觉得暂时还不行功力的学习者,它可以带你由理论学习阶段逐步过渡到实践阶段。关于这样一部书,要是太厚就有点骗钱的嫌疑,要是太深化又会让人觉得作者故意显摆自己的学问。LDK算得上是恰到优点。
3、《Linux设备驱动程序》(第3版)
合适中低水平的人。Linux设备驱动模型真心杂乱!关于写Linux驱动的人来说,这本书应该是教科书等级的吧,必读.
4、《深化Linux内核架构》
觉得是linux内核的一大作,坊间关于《深化了解linux内核》的传说,自己用自己的拙学是这么了解的。关于可以有较好的英文阅览能力的人,可以不必看毛德操的教师的书,后者现已完全可以替代了。留意现在比较的逻辑,并没有拿这本书去调戏《深化了解》,毕竟自己认为本书阅览时刻该是有操作体系概念,然后还没有深化代码研讨的阶段。所以相同还在探索的你我,不要被本书的页数给吓到了,假如你是在校学生,我主张花一个学期对着源码研讨。
三、C言语自学书本入门引荐之运用系列
1、《UNIX环境高档编程》
好书的妙处之一,便是能给你与作者沟通的感觉。技能书本常犯两个缺点,一个是着眼点太低,堆砌细节(比方谭浩强的《C程序规划》),读起来如同听和尚念经,无法沟通。再一个便是着眼点太高,兜售哲学(比方ESR的《TheArtofUNIXProgramming》),读起来如同听于丹教师讲论语,不敢沟通。此书的经典性就在于不高不低不多不少,把UNIX体系编程的来龙去脉向你娓娓道来。许多当地都可以让你感觉到,你的疑惑作者在写书的时分现已一目了然。从疑惑到彻悟的那一瞬间的畅快感是学习最大的高兴。
2、《UNIX网络编程》
了解linux下的网络编程,这本很赞。其中讲到了较为底层的网络编程体系调用和几种网络通信形式,譬如堵塞式,非堵塞式,I/O多路复用等。但离实践仍是由于必定的间隔,网络编程中重点不在于体系调用,而是对详细的项目想要规划与之习惯的网络形式。
四、高能来袭,C言语自学入门书本引荐之进阶系列(学完就等着封神吧王者归来BAT等你)
1、《C圈套与缺陷》
这是一本小册子,有让人继续读下去的欲望,倒不是由于页数少好欺压,是由于书中所说的几乎一切需要留意的当地作为一个程序员都有或许遇到,作者叙说起来很有意思,丝毫没有说教的感觉,举的比方很简略却言必有中。
此书作为一本常备读物是十分适宜的,没事经常翻翻加深印象。
2、《C专家编程》
它使你对C的运用有深化了解,最终还介绍了一些C++,假如你以前没太多接触过C++,只知道C,经过这本书打开通往C++之门也不错。书中还提到了一些当年那些传说中Hacker的的故事,挺幽默的。
可是看这本书仍是要有些背景的。
你要学过编译原理,虽然不需要学的太深太好,但至少对里边的一些概念要有所了解,否则对里边内存分配的部分(事实上许多是针对编译器的),你会感到吃力。还有,你要有些Unix/Linux的文化背景,比方Unix的C编程风格,还有Unix里的一些命令,工具。
3、《C言语程序规划》K&R版
拿到这本薄薄的书,许多人开端怀疑,C言语是这么几百页能讲清楚的么。看完这本书,我想答案现已很明晰,却真的让人感到震憾。什么是好书?无法删减的书才是真实的好书。K&R的书一如C言语的规划理念:简略而高效
里边的习题主张都认真做一遍,并且是在linux下用vi来做,用makefile来编译,用shell脚原本进行测验,原本第八章的题便是和linux相关的
计算机的大学生们不该只会在WINDOWS下用VC来编程,而都应该在linux环境下进行程序规划,由于linux自身便是为开发者预备的操作体系
4、《C言语解惑》
本书脱胎于作者在C言语的摇篮——贝尔实验室教授C言语的讲稿,几乎涵盖了C言语各个方面的难点,并包括了一些其他书本很少剖析到的问题。在每个谜题后边都有翔实的解题剖析,使读者可以清晰地把握C言语的结构与含义,学会处理许多常见的约束和圈套,是一本绝佳的C言语练习册。
5、《你有必要知道的495个C言语问题》
比教材经典,最好手边一本教材,一边翻,一边看本书。主张会集时刻看,然后再从头温习!很有用的书,比c言语圈套,c言语解惑要深入!!!广度还行,深度缺乏,合适查缺补漏。
6、《C言语参考手册(原书第5版)》
这是C99确定发布后出版的参考手册。相比K&R要愈加接近现在。K&R合适入门,而这本书不读,恐怕不算”学过C言语“。
7、《C言语接口与完成》
这本书的言语属于那种简略精确的风格,与原文的语义共同性很高,基本上没有因夸耀文字而献身精确性之处。新手当做爱好书看或许内行老温习下也可以。可以加深对ADT的了解。
8、《深化了解计算机体系》(修订版或第3版)
这本书是引导你如何练内功的,可是要是我来说的话,我个人认为这本书是在你学完数据结构和导论之间去看,由于这本书仅仅让你去深化了解计算机导论里边的一些概念,算是高配版别的计算机导论,意图是为了引出来操作体系、组成原理这些专业核心的课程。你要是盼望看完这本书你就能左手写个App右手写个Web动态网站的话就错了,这本书的含义正在于他的这个英文版的名字,ComputerSystem—AProgrammer’sPerspective,一个程序员的修养,如何利用计算机的作业流程去优化自己写的东西这个才是这本书的意图。
9、《C言语的科学和艺术》
这本书关于C言语中比较困难的部分:如指针、C风格字符串、数组和指针的联系、数组和字符串的联系,都有“言必有中”式的透彻剖析,使初学者可以简略的明白其中的常识,也使有经历的读者可以抓住重点了解愈加深化。关于这些比较精华的常识,特别是指针和数组名的区别,会在文中屡次被提示:分配内存、左值!
初学者在编程中,很少接触文件的操作,可是文件操作十分重要,不管初学者仍是有必定经历的读者都应该对C规范库中的文件函数熟练的把握,这本书对文件的介绍会让你有体系了解,并且对运用这些函数时常会犯的过错有先知一般的预见,从而避免了初学者遇到问题调试时的辛苦周折。
10、《数据结构与算法剖析C言语系列》
这本书确实是很好的数据结构与算法剖析的最佳入门教程,不过看这本书仍是要有点数据结构的根底。经过Java言语描述,评论了主要的数据结构:表、栈、行列、树、散列、优先行列、不相交集合和图;一起评论了经典的排序算法:插入排序、希尔排序、堆排序、归并排序、快速排序;介绍了5种常用算法:贪婪算法、分治算法、动态规划、随机化算法、回溯算法;并评论了JavaCollection中相关数据结构的完成:ArrayList、LinkedList、TreeSet、TreeMap、HashSet、HashMap、PriorityQueue。
11、《Linux程序规划》
《Linux程序规划》是我的Linux编程入门书本,在阅览和学习这本书的时分产生了许多的疑问,书里也没有对应的解答,直到……直到我看了APUE,带着这些问题去学习APUE,产生了巨大的能量。总归,引荐这本书,可是这本书也仅仅入门书本,站在《Linux程序规划》的膀子上,学习APUE,在Linux的国际里遨游吧!
12、《现代编译原理》
翻了这么多本书,这是我看过的唯一一本讲详细怎样构建一个编译器的书。一起这本书所构建的编译器就像作者说的那样,简略可是并不平凡,拥有许多挺先进的特性。也能算是一个优化编译器。
可是要跟着这本书做下来仍是有必定难度的,需要扎实的C言语功底。
13、《重构-改进既有代码的规划》
大师MartinFowler的经历之谈,看后有种醍醐灌顶、欲罢不能的感觉。重构也是当今灵敏开发一项不可或缺的技艺,主张一切有规划和项目开发经历的开发者都应读一下。
14、《老码识途-从机器码到框架的体系观逆向修炼之路》
常识点都是底层的干货,对了解高层封装出来的一些概念的实质灰常有协助。比方指针实质上便是个4字节的地址,指针类型仅仅由编译器识别,然后体现在操控拜访多少个字节的CPU指令上;
比方函数是怎样完成调用、传参、回来的,传参又有寄存器传值、压栈传值、压栈传地址等方法,跨言语调用函数时调用惯例的和谐。
总归弄懂了这些底层的机制,对高层言语的了解会透彻许多。
不过最好有一点汇编根底再读,否则略艰涩。
15、《C言语进阶》
这本书应该适用于学过C,可是想温习一下的人。里边有一部分根底语法,可是也有许多高档的东西。函数指针与指针函数,指针数组与数组指针,预定义,预编译,调试之类。可是感觉最终一章的常用算法有种剩余的感觉。假如想应付面试,看这本书应该也没有错,里边有许多笔试喜欢考的sizeof的东西。
16、《有用C言语编程》
书写的很朴实,也如书名,确实有用,易懂.把这本书吃透了,找个作业,那是再简略不过了,所以说一本好书需要时刻来检验它,在年月中沉积下来…年月检验过的好书,不解释。

未经允许不得转载:IT技术网站 » c语言基础知识(入门书籍)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载