C++秃头之旅:第一个C++程序

经典的程序,打印hello,world:

//C++的第一个程序,打印hello world

#include <iostream> //头文件 意思:stdio in out stream

using namespace std;

int main() // C++中必须写int main()

{

        // 输出 ----- 对代码的功能做描述,意义,对于程序员来说

        // C++ 注释符号 ---- //或者/* */

        cout << "hello world!" << endl; //输出

        cout << "你好,C++,我来了" << endl;

        //cout是个对象,不是关键字,也不是输出

        cin.get(); //要让窗口一直打开

        return 0; //必须写上return 0

}
注意:要让窗口一直开着,知道您按任何键,必须添加 cin.get() 语句

这个程序包含以下元素:

  • 注释,由前缀//标识
  • 预处理器编译指令#include
  • 函数头,int main()
  • 编译指令 using namespace
  • 函数体,用{}括起
  • 使用C++的cout工具显示消息的语句
  • 结束main()函数的 return 语句

main() 函数

  • 去掉修饰后,程序如下:

    int main()
    
    {
    
            statements
    
            return 0;
    
    }
  • 这几行代码构成了函数定义,该定义有两部分组成:
    • 函数头:int main()

      • 注意:C++句法规定:要求main()函数的定义以函数头int main()开始
    • 函数体:花括号{}中包括的部分
      • 是指出函数应做什么的计算机指令
      • 每条完整的指令都称为语句,所有的语句都已分号结束
        • 注意:在输入一条完整语句时,请不要省略分号,因为它是一个终止符,是语句的组成部分
      • main()中最后一条语句叫返回语句,它结束该函数

C++注释

  • C++注释以(//)打头,到行尾结束。注释可以位于单独的一行上,也可以和代码位于同一行。

    • 注意:应使用注释来说明应用程序,程序越复杂,注释的价值越大
  • C++也能够识别c注释,c注释包括在/*...*/之间

头文件

  • 像iostream这样的文件叫做包含文件,由于他们被包含在其他文件中:也叫头文件
  • iostream中的io指的是输入(进入程序的信息)和输出(从程序中发送出去的信息)
    • 注意:使用cin和cout进行输入和输出的程序必须包含头文件iostream
  • 有些c头文件被转换为c++头文件,这些文件被重新命名,去掉了扩展h,并在名称前面加上前缀c(表明这些文件来自c语言)

名称空间

using namespace std;

  • 注意:这叫做using编译指令,到第九章时详解,这里不过多介绍
  • 名称空间

    • 它是一项c++特性,让你在编写大型程序以及将多个厂商现有的代码组合起来的程序时更容易,它还有助于组织程序
    • 类,函数和变量便是c++编译器的标准组件,他们现在都被放置在名称空间std中
      • 这意味着iostream定义的用于输出的cout变量实际上是std::cout
      • 而using编译指令使得std名称空间的所有名称都可用,而不必使用std::前缀

使用cout进行C++输出

cout << "Come up and C++ me some time.";

  • 从概念上看,输出是一个流,即从程序流出的一系列字符。cout对象表示这种流,其属性是在iostream文件中定义的
  • cout对象包括一个插入运算符(<<),他可以将其右侧的信息插入到流中
  • 控制符endl: cout << endl;
    • endl是一个特殊的C++符号,表示一个重要的概念:重起一行,在输出流中插入endl将导致屏幕光标移到下一行开头
    • 诸如endl等对于cout来说有特殊含义的特殊符号被称为控制符
    • 和cout一样,endl也是在头文件iostream中定义的,且位于名称空间std中
  • 换行符
    • C++还提供了另一种输出中指示换行的旧式方法:C语言符号 \n:

      • cout << "What‘s next ?\n";
      • \n被视为一个字符,名为换行符
      • 注意:
        endl:为换行符,并且清空,刷新缓冲区,可以立即显示
        \n换行符,也可以换行,但只有换行功能
        在微观上,endl的效率比\n慢,\n的显示会比endl慢半拍

C++源代码的格式化

  • 在C++中通常可以在能够使用回车的地方使用空格,使用空格的地方可以使用回车,这说明既可以把几条语句放在同一行上,也可以把几条语句放在同一行上

    #include <iostream>
    
    int main()
    {
        using namespace std; 
    
        cout << "come up and c++ me some time.";
        cout <<endl;
        cout <<"you are regreat it!" <<endl; 
    
        return 0;
    }
  • 源代码中的标记和空白
    • 一行代码中不可分割的元素叫做标记,通常必须使用空格、制表符、或回车将两个标记分开,空格、制表符和回车统称为空白

原文地址:https://www.cnblogs.com/1Q84zj/p/10054055.html

时间: 2024-10-29 13:47:13

C++秃头之旅:第一个C++程序的相关文章

【C++探索之旅】第一部分第三课:第一个C++程序

 内容简介 1.第一部分第三课:第一个C++程序 2.第一部分第四课预告:内存的使用 第一个C++程序 经过上两课之后,我们已经知道了什么是编程,编程的语言,编程的必要软件,C++是什么,我们也安装了适合自己的一个IDE(Integrated Development Environment,就是"集成开发环境"的意思). 如果你真的要开始在Linux下编写程序,除了使用IDE之外(IDE集成了文本编辑器,编译器,调试器,运行程序等),也可以选择另一种难一些的方式:自己用某一种文本编辑

C++ 利用&lt;cstdlib&gt; 头文件 , 产生一个random number generator

头文件<cstdlib>中有一个重要的函数 rand() , 可以作为随机数发生器. 现在现在我想产生一个随机数, 我使用如下的程序: #include <iostream> #include <ctsdlib> <span style="font-family: Arial, Helvetica, sans-serif;">using namespace std;</span> int main() {     cout &

【iOS开发之旅】第一个iOS程序

启动界面:开发环境版本:模拟器运行效果:main.m // // main.m // 01-加法计算器 // // Created by ChenQianPing on 16/1/20. // Copyright © 2016年 chenqp. All rights reserved. // #import <UIKit/UIKit.h> #import "AppDelegate.h" // IOS程序是从main开始运行的 int main(int argc, char

NHibernate之旅(2):第一个NHibernate程序

本节内容 开始使用NHibernate 1.获取NHibernate 2.建立数据库表 3.创建C#类库项目 4.设计Domain 4-1.设计持久化类 4-2.编写映射文件 5.数据访问层 5-1.辅助类 5-2.编写操作 6.数据访问层的测试 6-1.配置NHibernate 6-2.测试 结语 作者注:2009-11-06已更新 开始使用NHibernate 我们亲自动手,一步一步搭建一个NHibernate程序来,我以一个实际场景电子交易程序来模拟,客户/订单/产品的经典组合.由于是第一

[转]NHibernate之旅(2):第一个NHibernate程序

本节内容 开始使用NHibernate 1.获取NHibernate 2.建立数据库表 3.创建C#类库项目 4.设计Domain 4-1.设计持久化类 4-2.编写映射文件 5.数据访问层 5-1.辅助类 5-2.编写操作 6.数据访问层的测试 6-1.配置NHibernate 6-2.测试 结语 作者注:2009-11-06已更新 开始使用NHibernate 我们亲自动手,一步一步搭建一个NHibernate程序来,我以一个实际场景电子交易程序来模拟,客户/订单/产品的经典组合.由于是第一

Linux内核学习--写一个c程序,并在内核中编译,运行

20140506 今天开始学习伟大的开源代表作:Linux内核.之前的工作流于几个简单命令的应用,因着对Android操作系统的情愫,"忍不住"跟随陈利君老师的步伐,开启OS内核之旅.学习路径之一是直接从代码入手,下面来写一个hello.c内核模块. 说明: 这个路径/usr/src/linux-headers-2.6.32-22/include/linux是引用的头文件. 内核模块固定格式:module_init()/ module_exit(),module函数是从头文件中来的.

关于链表的一个小程序

关于链表的一个小程序: /**************************链表*****************************//* 具备功能 *//* 链表按元素位置插入 *//* 链表按元素位置删除 *//* 链表全表遍历 *//* 链表整表创建(头插法) *//* 链表整表创建(尾插法) *//* 链表整表删除 *//**************************链表*****************************/ #include<stdio.h>#in

【Objective-C】04-第一个OC程序解析

说明:这个Objective-C专题,是学习iOS开发的前奏,也为了让有面向对象语言开发经验的程序员,能够快速上手Objective-C.如果你还没有编程经验,或者对Objective-C.iOS开发不感兴趣,请忽略.学习本专题之前,建议先学习C语言专题. 在上一讲,已经新建了第一个OC程序,这讲就来解析它内部的代码. 查看项目结构可以发现这个程序中只有一个源文件:main.m 打开main.m文件,代码如下 1 #import <Foundation/Foundation.h> 2 3 in

黑马程序员----第一个OC程序

一.#import 1.#import的作用: 跟#include的作用一样,拷贝文件 可以自动防止文件的内容被重复拷贝 2.#import <Foundation/NSObjCRuntime.h> NSObjCRuntime.h文件中有SLog函数的声明 二.Foundation框架头文件的路径 1. 右击Xcode.app --> 显示包内容   2. Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer