• C++---初识C++


    C和C++的关系

    • C语言是结构化和模块化的语言, 面向过程.
    • C++是在C语言的基础上, 增加了面向对象的机制, 并对C语言的功能进行了扩充.
      • 变量的定义可以出现在程序中的任何行
      • 提供了标准输入输出流对象cin和cout.
      • 用const定义常量
      • 函数重载, 函数模板, 带默认值的函数
      • 引用类型
      • 单目作用域运算符
      • string类型字符串
      • 使用new和delete代替malloc和free函数

    开发工具 code::blocks

    集成安装后, 注意添加环境变量: D:CodeBlocksMinGWin

    第一个程序-Helloworld

    #include <iostream>
    int main()
    {
        std::cout << "HelloWorld!" << std::endl;
        return 0;
    }
    

    命令行运行

    image-20200422154455055

    程序解析

    • #开头的语句称为预处理器指令

    • #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++使用

    image-20200422162455470

    • 使用名称空间std, 名称空间是一项C++的特性, 用来在编写大型程序时组织源代码

      • 其他用法:

        using namespace std;
        
        using std::cin;
        using std::endl;
        using std::cout;
        
    • <<符号表示把字符串HelloWorld!插入到输出流cout中打印, endl是控制符, 换行( ).

      • 输出时一个流, 可以理解成从程序流出的一系列字符串
      • cout对象表示这种流, 在iostream文件中定义
      • <<是插入运算符, 可以将右侧信息插入到流中.
    • return 0表示程序正常结束, 非0表示异常结束. 操作系统支持其他进程来获取别的进程的退出代码.

    编码规范

    • 每条语句独占一行
    • 每个函数都有一个开始和结束花括号, 花括号各占一行
    • 函数中的语句相对于花括号进行缩进
    • 与函数名相关的小括号周围没有空格
    • 注释应该准确, 简洁, 易懂
      • 单行注释. //开头
      • 多行注释, /*开头, */结尾

    编译和执行过程

    1. 编译(预处理->编译->目标文件)

      形成目标代码或文件, 目标代码时编译器的输出结果, 常见扩展名为.o.obj

    2. 链接

      将目标代码跟C++函数库相连接, 并将源程序所用的库代码与目标代码合并, 形成最终可以执行的二进制机器码,即可执行程序

    3. 执行

      在特定的机器环境下运行C++应用程序

    image-20200422172418543

  • 相关阅读:
    【BZOJ4566】[HAOI2016]找相同字符
    【BZOJ3238】[AHOI2013]差异
    【BZOJ4698】[SDOI2008]Sandy的卡片
    后缀数组(SA)总结
    【HDU3117】Fibonacci Numbers
    线性常系数齐次递推总结
    【HDU4565】So Easy!
    【BZOJ3144】[HNOI2013]切糕
    【BZOJ1070】[SCOI2007]修车
    【LOJ6433】【PKUSC2018】最大前缀和
  • 原文地址:https://www.cnblogs.com/KX-Lau/p/12810035.html
Copyright © 2020-2023  润新知