C语言结构体数组中元素的引用,指向结构体的指针和运算符的优先级和结合性的问题,高手帮忙

C语言结构体数组中元素的引用,指向结构体的指针和运算符的优先级和结合性的问题,高手帮忙,第1张

我也运行了下,全是6

也不太清楚是怎么回事

不过我想如果不是题目有问题的话那应是D比C更好一些

因为C和D中的运算符优先级是这样的:C中最高的是成员访问符然后才是括号然后是前自增然后是解引用,编译器应该是把括号认为是最高优先级的了,括号内算完后再算外边的,因为如果严格按照优先级的话最先的应该是.可是在括号没运算出来前.是无效的,所以说C编译的结果理论上不准确吧,D就很中规中矩的答案了。

个人感觉题目有问题的可能大一点,毕竟如果说学C++的理论无法用于实践学着也没用哈,所以实践更重要一些。

如果强要说只有D是对的话只有那一个解释了

参考书上是找到优先级的地方

C++比C复杂的多,所以教材也就纷繁芜杂。既有综合性入门性的,也有专项深入的,阅读要循序渐进,以下分阶段介绍

首先是毫无基础的时候,先要初步掌握语法并形成编程的概念

level 0:

K&R,Brian W.Kernighan和Dennis M.Ritchie 的《C程序设计语言》。

尽管C++之父亲口说,最好把C++看作一门新语言来学习,但我个人认为,一开始学习C至少有两大好处。相比C++,C还是非常简单的,易于掌握,避免你过早陷入C++的语法泥潭。同时,学C能让你对计算机的底层运行有所认识,建立良好的概念。

H.M.Deitel和P.J.Deitel的《C++程序设计教程》。

作者是父子,从事语言教材的编写合计超过40年,本书被美国众多高校选用为教材,既可入门也可翻阅,甚好。有很多号称C++入门的书,但经我的观察,如果要选择能推荐给毫无编程概念的新手用的书,这本算是佼佼者了。

钱能的《C++程序设计教程》

国内C++教材中较好的一本,作者是教师,总结多年教学实践的经验写成的,比较适合国内学生。

PS:老谭也有一本C++教材,在此就不太推荐了,它完全是用C的思维来看C++。

当读者有一定c/c++基础

推荐的阅读顺序:

level 1

从<<essential c++>>开始,短小精悍,可以对c++能进一步了解其特性

以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完

C++之父Bjarne Stroustrup的 <<the c++ programming language>>,简称BS的TCPL,全面而深入的书,缺点也是太厚。

这个阶段 也可以延用前阶段Detiel父子的教材。

level 2

然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻

接着是<<exceptional c++>>,个人认为Herb Sutter主席大人的语言表达能力不及Scott Meyers总是在教育第一线的好

顺下来就是<<more effective c++>>和<<more exceptional c++>>,请熟读并牢记各条款

当你读到这里,应该会有一股升级的冲动了

level 3

<<insied the c++ object model>>看过后如一缕清风扫去一直以来你对语言的疑惑,你终于能明白compiler到底都背着你做了些什么了,这本书要细细回味,比较难啃,最好反复看几遍,加深印象

看完上一本之后,这本<<The design and evolution of c++>>会重演一次当年C++他爹在设计整个语言过程中的历程

level 4

<<the c++ standard library>>是stl的字典,要什么都可以查得到

学c++不能不学stl,那么首先是<<effective stl>>,它和圣经一样是你日常行为的规范

<<generic programming and the stl>>让你从oo向gp转变

光用不行,我们还有必要了解stl的工作原理,那么<<stl源码剖析>>会解决你所有的困惑

level 5

对于c++无非是oo和gp,想进一步提升oo,<<exeptional c++ style>>是一本主席这么多年的经验之谈,是很长esp的

一位stl高手是不能不去了解template的,<<c++ template>>是一本百科全书,足够你看完后对于gp游刃有余

<<modern c++ design>>是太过聪明的人写给明眼人看的

最后一本书

ISO+IEC+14882-1998 C++规范。这可不是宝典圣经,这就是C++的法律,一切疑问以此为准到此打住。不过,拖个小尾巴,具体情况取决于编译器实现。

翁凯老师是浙江大学计算机科学与技术学院的老师,在中国大学MOOC开设了C语言程序设计、Java语言程序设计等课程,是目前选课人数最多、最活跃的课程之一。

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。

C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

C语言是一门面向过程的计算机编程语言,与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产迟薯生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%-20%。因此,C语言可以编写系统软件。

当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计段旦宴算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机 *** 作系统中都能够得到适用,且效握银率显著。

C语言拥有经过了漫长发展历史的完整的理论体系,在编程语言中具有举足轻重的地位。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11507160.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存