笔记
manatee找不到山丘
游戏继续
展开
-
2021-03-13牛客刷题笔记
编程能力太差 从今天开始刷题 今天刷的是牛客网的编程入门题 记录自己在解题过程中琐碎的知识点 从现在开始永远都来得及!加油! 1.long int 和long没有区别。long是long int的缩写。 2.“不要只关注语言的语法。要专注语言的范式,其弱点和强项。” ...原创 2021-03-14 21:37:11 · 109 阅读 · 0 评论 -
C语言中while(~scanf(“%d”,&n))
scanf()函数返回成功赋值的数据项数,出错时则返回,EOF定义为-1。~是按位取反,-1十六进制补码表示为0x ffffffff,f是二进制的1111,取反后就全部变成0了,于是while结束。只有返回值为EOF(即-1)时,其取反的的值(即while循环的判断条件)才为0,才能结束循环,其它输入情况下(无论是否输入成功)while循环的判断条件为非0,即为真。 这种写法的漏洞在于:一但输入的值为字母、符号之类的,scanf赋值不成功把读到的内容又返回到stdin的缓冲区(假设这个值为t),其取反得到的转载 2021-03-13 17:18:18 · 438 阅读 · 0 评论 -
代码面条化
代码过度使用GOTO语句而不是结构化编程结构,从而导致错综复杂和不可维护的程序,通常称为意大利面条代码。 这样的代码有一个复杂和纠结的控制结构,导致程序流程在概念上就像一碗意大利面,扭曲和纠结。在美国国家标准局1980年出版的一本出版物中,用“意大利面条”这个词来描述那些“分散和分散的文件”的较旧的节目。 意大利面代码也可以描述一种反向模式,在这种模式下,面向对象是以程序风格编写的,比如创建方法过于冗长和混乱的类,或者抛弃面向对象的概念,比如多态。这种形式的意大利面代码的存在可能会显着降低系统的可理解性。原创 2020-08-01 22:22:14 · 282 阅读 · 0 评论 -
关于语言
之前看过一点吴军博士《数学之美》中关于语言的描述,当时有一点领悟的感觉,今晚看到贺利坚老师的这段话,结合之前领悟到的,更加体会到语言的作用和本质:交流思想、传达信息。“语言不仅指编程时用的语言,还有在设计阶段用到的语言,比如面向对象分析与设计中使用的统一建模语言uml,并不是要用它编出程序来,但需要它在编出程序之前描述出设计方案。诸如程序流程图、数据流图之类的图形工具,也属于设计语言的范畴。再拓展开来,理论计算机中用到的形式语言,包括用于表示程序设计语言这样的上下文相关语言,也包括用来描述自然语言这样的上下原创 2020-07-10 05:09:10 · 92 阅读 · 0 评论