C++基础知识1
1 初始C++
1.1 编写一个简单的C++程序
1.1.1 程序结构
每个C++程序都包括一个或多个函数(function),但只有一个主函数main。操作系统通过调用 main来运行C++程序。
一个函数定义包括四个部分:返回类型(return type,=0表明成功,非0返回由系统定义通常用来指出错误类型),函数名(function name),一个括号包围的形参列表(parameter list,可为空),函数体(function body)。
1.1.2 编译、运行程序
环境准备------编写好程序后,需要编译。如何编译依赖于操作系统和编译器。编译器大都具备集成开发环境(Integrated Developed Environment,IDE),将编译器与其他程序创建和分析工具包装在一起。
Ubuntu系统下安装g++编译器指令:$ sudo apt-get install g++
编写源文件------程序文件通常被称为源文件(source file),编译器不同导致后缀不同,常见的.cc,.cxx,.cpp,.cp,.c。用文本编辑器来编辑源代码。
编译文件------若使用命令行界面,通常是在一个控制台窗口内编译程序。
Ubuntu系统下用g++编译器编译指令:
$ g++ prog1.cpp。生成可执行文件默认为a.out
$ g++ -o 可执行文件名 prog1.cpp。则可指定生成可执行文件名
运行程序------运行一个可执行文件。命令:$ ./可执行文件名。./代表位于当前文件夹。
1.2 初识输入输出
C++未定义任何输入输出(IO)语句,包含了一个全面的标准库(standard library)来提供IO机制及其他。
标准输入输出对象
标准库中定义了4个IO对象。
|
操作符 |
对象 |
类 |
备注 |
|
<< |
cin |
istream |
标准输入 |
|
>> |
cout |
ostream |
标准输出 |
|
cerr |
标准错误(输出警告和错误消息) |
||
|
clog |
输出程序运行时的一般信息 |
使用标准库中的名字
命名空间(namespace)帮助我们避免不经意的名字定义冲突,以及使用库中相同名字的冲突。标准库定义的所有名字都在命名空间std中。
1.3 注释简介
C++注释分为两种:单行注释(//)和界定符对注释(/*...*/)。界定符对注释不可以嵌套。单行注释与界定符对注释一般分开使用。
C++基础知识1的更多相关文章
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
- APP测试入门篇之APP基础知识(001)
前言 最近两月比较多的事情混杂在一起,静不下心来写点东西,月初想发表一遍接口测试的总结,或者APP测试相关的内容,一晃就月底了,总结提炼一时半会也整不完.放几个早年总结内部培训PPT出来 ...
随机推荐
- 201521123105 第9周Java学习总结
1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避 ...
- 201521123044 《Java程序设计》第12周学习总结
1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象(属性:int id, String name,int age,doubl ...
- 201521123023《Java程序设计》第14周学习总结
1. 本周学习总结 (1)ResultSet.Statement.Connection使用完后最好立刻关闭,并且按照ResultSet.Statement.Connection的顺序依次关闭. (2) ...
- idea使用转载【别人的专栏】
维C果糖
- java进程/线程;堆和栈;多线程
一.进程和线程 进程:在内存中运行的应用程序,一个exe是一个进程. 如:ps -exf 可以查看各个应用的进程,其中ppid为父进程: ps aux | egrep '(cron|syslog)' ...
- Java通过链表实现栈
class LinkedStack<T> { private Node top; private int size; /** * 初始化栈 */ public LinkedStack() ...
- jmeter 压测最近的心得体会
笔者14年入坑测试,截止到17年年初一直在游戏公司,压测,我都没有怎么用过,特别是jmeter去压测,自己学习,可是先找到切入点,于是乎, 其实也算是我学习后,先找一个更大的平台吧,我聊了几个游戏公司 ...
- macbook 263企业邮箱设置
第一步:打开邮箱,点击添加账号,选择其他 第二步:填写完整的电子邮件地址和密码 第三步:填写收件服务器(popcom.263xmail.com),发件服务器(smtpcom.263xmail.com)
- SpringBoot文档翻译系列——29.SQL数据源
原创作品,可以转载,但是请标注出处地址: 因为需要使用到这方面内容,所有对这一部分进行了翻译. 29 使用SQL数据源 SpringBoot为SQL数据源提供了广泛支持,从直接使用JdbcTempl ...
- Eight hdu 1043 八数码问题 双搜
Eight Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...