c++ premier学习笔记(unit1

(因为我这里很多地方都是直接引用了原作,所以我这篇文章归类为"转载“)


1、错误信息通常包含一个行号和一条简短描述,描述了编译器认为的我们所犯的错误。按照报告的顺序来住个修正错误,是一种好习惯。因为一个单个错误常常会具有传递效应,导致编译器在其后报告比实际数量多得多的错误信息。另一个好习惯是在酶修正一个错误后就立即重新编译代码,或者最多是修正了一一小部分明显错误后就重新编译。这就是所谓的“edit-compile-debug”周期



2、关于c++的格式问题

c++程序很多程度上是格式自由的,但是还是有一点点的要求。类似int main(){}中的左花括号,就必须是形参列表右面的第一个非空、非注释的字符。

虽然很多程度上可以按照自己的意愿自由的设定程序的格式,但我们所做的选择会影响程序的可读性。例如,我们可以将整个main函数写在很长的单行内,虽然这样是合乎语法的,但会非常难读

关于c/c++的正确格式的辩论是无休止的。

我们需要牢记的一件重要的事情:其他可能的程序格式总是存在的。当你要选择一种格式风格时,思考一下它会对程序的可读性和易理解性有什么影响,而一旦选择了一种风格,就要坚持使用。

3、一些小格式

从书上面了解到的是,通常都是后面直接加一个花括号,然后另外一个花括号在最后一行换行然后上下紧贴那个循环体 eg while、for、do(while)……

while(){

 

 

}else{

}

4、类的一些说明

4.1为了使用类,我们需要了解三件事情

类名是什么?

它是在哪里定义的?

它支持什么操作?

对于书店程序来说,我们假定类名为Sales_item,头文件Sales_item.h中已经定义了这个类

对于不属于标准库的头文件,则用双引号(“”)包围。

如前所见,为了使用标准库设施,我们必须包含相关的头文件。类似的,我们也需要使用头文件来访问为自己的应用程序所定义的类。习惯上,头文件根据其中定义的类的名字来命名。我们通常使用.h作为头文件的后缀,但也有一些程序员习惯.H,.hpp或.hxx。标准库头文件通常不带后缀。编译器一般不关心头文件名的形式,但有的IDE对此有特殊的要求。

为了使用一个类,我们不必关心它是如何实现的,只需知道类对象可以执行什么操作。就像Sales_item类的作用是表示一本书的总销售额、售出册数和平均售价。

每个类实际上都定义了一个新的类型,其类型名就是类名。(也就是说,我们如果定义好了,那么我们就可以很简单的使用,类似int char string double float之类的数据了)

一般而言,类的作者决定了类类型对象上可以使用的所有操作。



4.2

成员函数的概念

成员函数是定义为类的一部分的函数,有时也被称为方法。

当用点运算符访问一个成员函数时,通常我们是想(效果也确实是)调用该函数。我们使用调用运算符(())来调用一个函数。调用运算符是一对圆括号,里面放置实参列表(可能为空)。成员函数isbn并不接收参数。因此

item.isbn();



5、关于注释的相关笔记

5.1、//只能用于单行注释

5.2、/* */可以用于整段的注释

       /*

        *

        *

        */采用这一种格式

5.3、注释界定符是不能够嵌套的!这样子会出现很多奇奇怪怪的错误。

5.4、因此我们通常在debug的时候使用//来注释一行一行一行一行



6、关于输入不定量数据

6.1、 while(cin>>x)

这个时候我们是使用一个istream对象作为条件,其效果是检测流的状态。

如果流是有效的,那么检测成功。

如果遇到了EOF或者无效的输入(例如一个数据不是整数)

istream对象的状态会变为无效。

6.2、 关于手动输入EOF的操作方法:

windows ctrl+Z

Unix和Mac OS X ctrl+D


7、一个我感觉和oj很有趣的点

当你测试程序时,反复从键盘敲入这些销售记录作为程序的输入,是非常乏味的。大多数操作系统支持文件重定向,这种机制允许我们将标准输入和标准输出与命名文件关联起来:

$addItems<infile>outfile

假定$是操作系统提示符,我们的加法程序已经编译名为addItems.exe的可执行文件(在UNIX中是addItems),则上述命令会从一个名为infile的文件读取销售记录,并将输出结果写入到一个名为outfile的文件中,两个文件都位于当前目录中。



8、相关术语解释

8.1、 缓冲区(buffer) 一个存储取余,用于保存数据。IO设施通常将输入(或输出)数据保存在一个缓冲区中,读写缓冲区的动作与程序中的动作是无关的。我们可以显示地刷新输出缓冲,以便强制将缓冲区中的数据写入输出设备。默认情况下,读cin会刷新cout;程序非正常终止时也会刷新cout。

8.2、 Cerr一个ostream对象,关联到标准错误,通常写入到与标准输出相同的设备。默认情况下,写到cerr的数据是不缓冲的。cerr通常用于输出错误信息或其他不属于程序正常逻辑的输出内容。

8.3、 Clog一个ostream对象,关联到标准错误。默认情况下,写到clog的数据是被缓冲的,clog通常用于报告程序的执行信息,存入一个日志文件中。

8.4、 数据结构:数据及其上所允许的操作的一种逻辑组合。

8.5、 文件结束符(end-of-file)系统特定的标识,指出文件中无更多数据了。

8.6、 方法(method)成员函数的同义术语。

8.7、 标准库(standard library)一个类型和函数的集合,每个c++编译器都必须支持。标准库提供了支持IO操作的类型。c++程序员倾向于用“库”来指代整个标准库,还倾向于用库类型标识标准库的特定部分,例如用“iostream库”表示标准库中定义IO类的部分

8.8、 (important!)未初始化的变量(uninitialized variable)未赋予初值的变量。类类型的变量如果未指定初值,则按类定义指定的方式进行初始化。定义在函数内部的内置类型变量默认是不初始化的,除非有显示的初始化语句。试图使用一个未初始化变量的值是错误的。未初始化变量是bug的常见成因。

8.9、 ()运算符:调用运算符。跟随在函数名之后的一对括号“()”,起到调用函数的效果。传递给函数的实参放置在括号内。

8.10、           .运算符:左侧运算对象必须是一个类类型对象,右侧运算对象必须是此对象的一个成员的名字。运算结果即为该对象的这个成员。

8.11、           ::运算符 作用域运算符。其用处之一是访问命名空间中的名字。例如std::cout表示命名空间std中的名字cout



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 格外实用的c语言编程书籍——premier电子版。它是由Prata编写的,是一本<classic>级别的大部头教材,对c语言的各个方面进行了细致地讲解。该书在全球范围内广受好评,被誉为c语言编程经典入门读物。相较于传统的纸质版,电子版更具备便携性和交互性两大特点。在电子版上,你可以轻松地进行文字搜索、章节跳转、笔记记录等操作,在阅读体验上更为人性化,使你更好地掌握知识。 此书内容详尽、深入浅出,对想从事c语言编程的软件工程师具有广泛的适用性,从初学者到进阶者都能够从中获益良多。全书共计1100多页,涵盖了c语言的基础知识和高级应用,包括数据类型、流控制语句、结构体、函数、指针、内存管理等等。同时,该书中还有大量的示例代码和练习题,非常适合用来辅助学习和巩固所学知识。 总之,c语言是计算机编程语言中必不可少的一门,而premier电子版则是学习c语言的必备工具书。不管是从事软件开发的新手,还是追求技术深度的老手,都能够从这本书中汲取到宝贵的知识,帮助他们更好地编写优秀的程序。 ### 回答2: c premier是一种用于C语言编程的电子版本集成开发环境(IDE),它可以提供一个完整的开发环境,包括编辑器、编译器和调试器。使用c premier电子版可以方便地编写和管理C语言程序,加速开发流程,减少开发错误。c premier具有先进的功能,如语法突出显示、自动完成和脚本编写等,可用于各种类型的C语言程序开发包括嵌入式系统、桌面应用程序等。此外,c premier还具有强大的调试器,可以帮助开发人员查找和修复程序中的错误。c premier电子版的优势之一是它可以在不同平台上运行,包括Windows、Mac和Linux系统。总之,c premier电子版是一种非常实用的C语言开发环境,可以轻松编写高质量的C语言程序。 ### 回答3: Premier电子版是一种数字化的电子期刊,主要用于在线发布、订阅和阅读相关的经济、商业、金融和管理等领域的文章和研究。该电子版的优势在于其能够提供便利快捷的服务,用户无需购买实体版本,通过在线订阅即可随时随地浏览该刊物,方便用户学习和参考。此外,Premier电子版可以保证内容质量和权威性,其收录的文章和报告均来自于经过严格审稿的学术或专业期刊,保证了内容的可信度和专业性。另外,Premier电子版拥有较完善的检索和分类系统,用户可以按照自己的需求和兴趣对文章进行检索和筛选,从而节省时间和精力。总的来说,Premier电子版为学术研究者、商业从业者和爱好者提供了一个高质量、可信、便捷和多样的学习和借鉴资源,有助于推动相关领域的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值