C++---初识C++
C和C++的关系
- C语言是结构化和模块化的语言, 面向过程.
- C++是在C语言的基础上, 增加了面向对象的机制, 并对C语言的功能进行了扩充.
- 变量的定义可以出现在程序中的任何行
- 提供了标准输入输出流对象cin和cout.
- 用const定义常量
- 函数重载, 函数模板, 带默认值的函数
- 引用类型
- 单目作用域运算符
- string类型字符串
- 使用new和delete代替malloc和free函数
开发工具 code::blocks
集成安装后, 注意添加环境变量: D:\CodeBlocks\MinGW\bin
第一个程序-Helloworld
#include <iostream>
int main()
{
std::cout << "HelloWorld!" << std::endl;
return 0;
}
命令行运行

程序解析
以
#开头的语句称为预处理器指令#include语句不是必须的, 但程序中有该语句时, 必须将它放在程序的开始处- 将iostream文件的内容添加到程序中, iostream中包含了有关输入输出语句的函数
头文件的命名约定
头文件类型 约定 示例 说明 C旧式风格 以 .h结尾stdio.h math.h C C++通用 C++旧式风格 以 .h结尾iostream.h C++可以使用 C++新式风格 没有扩展名 iostream C++使用, 需要使用namespace 转换后的C 加上前缀c, 没有扩展名 cmath cstdio C++使用

使用名称空间
std, 名称空间是一项C++的特性, 用来在编写大型程序时组织源代码其他用法:
using namespace std; using std::cin;
using std::endl;
using std::cout;
<<符号表示把字符串HelloWorld!插入到输出流cout中打印, endl是控制符, 换行(\n).- 输出时一个流, 可以理解成从程序流出的一系列字符串
- cout对象表示这种流, 在iostream文件中定义
<<是插入运算符, 可以将右侧信息插入到流中.
return 0表示程序正常结束, 非0表示异常结束. 操作系统支持其他进程来获取别的进程的退出代码.
编码规范
- 每条语句独占一行
- 每个函数都有一个开始和结束花括号, 花括号各占一行
- 函数中的语句相对于花括号进行缩进
- 与函数名相关的小括号周围没有空格
- 注释应该准确, 简洁, 易懂
- 单行注释.
//开头 - 多行注释,
/*开头,*/结尾
- 单行注释.
编译和执行过程
编译(预处理->编译->目标文件)
形成目标代码或文件, 目标代码时编译器的输出结果, 常见扩展名为
.o或.obj链接
将目标代码跟C++函数库相连接, 并将源程序所用的库代码与目标代码合并, 形成最终可以执行的二进制机器码,即可执行程序
执行
在特定的机器环境下运行C++应用程序

C++---初识C++的更多相关文章
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 初识Hadoop
第一部分: 初识Hadoop 一. 谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- 初识IOS,Label控件的应用。
初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...
- UI篇(初识君面)
我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- 初识SpringMvc
初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
- Redis初识、设计思想与一些学习资源推荐
一.Redis简介 1.什么是Redis Redis 是一个开源的使用ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库,并提供多种语言的API.从2010 年 ...
- MongoDB【第一篇】MongodDB初识
NoSQL介绍 一.NoSQL简介 NoSQL,全称是”Not Only Sql”,指的是非关系型的数据库. 非关系型数据库主要有这些特点:非关系型的.分布式的.开源的.水平可扩展的. 原始的目的是为 ...
随机推荐
- CSRF、DDos避免方式
XSS(Cross-Site Scripting,跨站脚本攻击)是一种代码注入攻击.攻击者在目标网站上注入恶意代码,当被攻击者登陆网站时就会执行这些恶意代码,这些脚本可以读取 cookie,sessi ...
- 从零开始,开发一个 Web Office 套件(9):拖动鼠标选中文字 Edge Case
这是一个系列博客,最终目的是要做一个基于 HTML Canvas 的.类似于微软 Office 的 Web Office 套件(包括:文档.表格.幻灯片--等等). 博客园:<从零开始, 开发一 ...
- 解决vue单页面应用做微信JSSDK注入权限时出现“invalid signature”(ios端)
--都说微信开发多坑,没想到遇到一个天坑. 在做一个vue项目时,要用到微信JS-SDK,官方文档详见:https://developers.weixin.qq.com/doc/offiaccount ...
- LintCode 练习题
/** * 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输 ...
- linux下hadoop2.6.1源码64位的编译
linux下hadoop2.6.1源码64位的编译 一. 前言 Apache官网上提供的hadoop本地库是32位的,如果我们的Linux服务器是64位的话,就会现问题.我们在64位服务器执行Hado ...
- 报错 ——Error evaluating expression 'id != null id > 0'.
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: ### Error qu ...
- 记录VMware安装VMware Tools过程及遇到的一些问题
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 本文以CentOS安装为例 为什么要安装VMware Tools ? 便于在Windows 下更好管理虚拟机 便于设置Windows和CentOS ...
- Arch Linux 安装 Anbox
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 Anbox 介绍 Anbox 是一个可以在 GNU/Linux 发行版上运行 Android App 的容器,是一个开源兼容层. 其工作原理是在 ...
- KVM 虚拟化基本知识,virtio工作原理
KVM虚拟化的基本知识,virtio的工作流程及原理,virtio-vhost, virtio-vhost-user pci 配置空间,是谁在kick 写pci配置空间的?又是通过什么机制通知给qem ...
- 细说MVC框架的几大困惑:
--千万不要为了学习框架而学习框架,而是要为了解决问题而学习框架,这才是一个程序员的正确学习之道. --框架是为了解决一个又一个在Web开发中所遇到的问题而诞生的.不同的框架,都是为了解决不同的问题, ...