(1)你在源代码中写a和'a'有什么区别?
你的程序实际上是写在txt文件中(.c、.cpp啥的都是无格式文本)
如果你直接在源程序中写a,则编译器把它当成是你程序中的一个变量;
例如你在程序代码中写一句"int abc = 100",abc中的a被编译器理解成一个标识符/名称的组成部分。
如果你在源程序中写'a',则编译器遇到单引号把它理解成一个字符常量,这完全是编译器词法分析过程中的区别。
不管是a还是'a',你写在源程序文件中的内容都可以叫做代码的组成成分(如果不是资源数据)。
(2)'a'并非char类型,事实上它是int类型
这话说得不仅让人难以理解,而且根本就是错的。'A'是char类型常量无疑,注意区分术语integral type(整数类型,包括有符号或无符号的int, short, char)和integer(整型int),看英文书这个区别很明显,比如case子句都要求integral type,不一定是int类型。
(3)啥是ASCII码
0x34、'a'等都是二进制机器码的一种记录方式。程序编译之后,'A'和数值65的二进制码是相同的,所以有时用int类型的数值常量代替char常量能得到同样的结果(很多时候还牵涉到隐式类型转换,初学者先不管),这其实是不太规范的。计算机喜欢用机器码,源码是写给人看的,所以有些程序虽然机器码是正确的,但源码语义不明,也是不好的。
(4)
楼主还是换本书看吧,真心的。入门的话很多问题不必深究,先写程序跑起来,选教材最重要是作者讲述方式与你的理解方式一致。
工具:
如何用好 Google 等搜索引擎? - Raymond Wang 的回答
OS X 平台上有哪些值得推荐的常用软件? - 李骥平的回答
知乎 - 与世界分享你的知识、经验和见解
前端配色有哪些原则和技巧? - 知乎用户的回答
如何看待贴吧里的十五六岁就用引擎写游戏的开发者? - 韦易笑的回答
淘宝手机客户端有多少页面是 Web 模式 (包括 HTML5) 的? - 天猪(刘勇) 的回答
不小心下载了百度套装,如何彻底删除? - ytytytyt 的回答
Mathematica 到底有多厉害? - AlephAlpha 的回答
作为 IT 从业人员,你觉得有什么工具大大提高了你的工作效率? - 程序员
如何免费地、完整地把 PDF 文件转换为 Word 文件? - Microsoft Word
为什么 LLVM/Clang 能迅速发展起来? - 蓝色的回答
学编程需要用到微积分,离散数学,数学电路,还有函数,以及各种数学思想,对抽象思维和形象思想要求都比较高。学编程要具备一定的基础,总结之有以下几方面:
1、数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
2、逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)