C++ 编程:程序组成部分 & 函数 & 输入

文若2年前技术文章623

程序结构

首先从一个最简单的程序来看 C++ 程序结构:

截屏2023-06-09 14.53.09.png

第一部分:#include <iostream> 专业名词叫:预处理器编译指令 其实效果就类似于导包;

第二部分:main() 程序的主体 C++ 程序是从这里开始运行,调用其它功能函数;

第三部分:std::cout << "Hello World" << std::endl; 程序的功能,这行就是输出 Hello Word;

第四部分:return 0 在 C++ 中,除非明确声明了不返回值,否则函数必须返回一个值。main( ) 也是函数,且总是返回 一个整数。这个整数值被返回给操作系统,根据应用程序的性质,这可能很有用,因为大多数操作系 统都提供了查询功能,让用户能够获悉正常终止的应用程序的返回值。在很多情况下,一个应用程序被 另一个应用程序启动,而父应用程序(启动者)想知道子应用程序(被启动者)是否成功地完成了其任务。程序员可使用 main( )的返回值向父应用程序传递成功或错误状态。也就是说我们可以通过反回 code 让其它程序获得程序的运行情况,例如我们使用 Python 来调用系统 mv 程序,此时我们可以返回的 code 来判断程序是否出现异常。

截屏2023-06-09 14.53.18.png


命名空间

名称空间的概念,请看下方代码示例:

// Pre-processor directive
#include <iostream>

// Start of your program
int main()
{
  // Tell the compiler what namespace to look in
  using namespace std;

  /* Write to the screen using cout */
  cout << "Hello World" << endl;

  // Return a value to the OS
  return 0;
}

using namespace std; 这个可以理解为 Python 中的 from xxx import xxx

函数

函数定义也是比较简单的,首先你得先确定返回的数据类型,返回的数据必须是该类型。

#include <iostream>
using namespace std;

// Function declaration
int DemoConsoleOutput();

int main()
{
  // Function call
DemoConsoleOutput();

return 0;
}

// Function definition
int DemoConsoleOutput()
{
cout << "This is a simple string literal" << endl;
cout << "Writing number five: " << 5 << endl;
cout << "Performing division 10 / 5 = " << 10 / 5 << endl;
cout << "Pi when approximated is 22 / 7 = " << 22 / 7 << endl;
cout << "Pi actually is 22 / 7 = " << 22.0 / 7 << endl;

return 0;
}

上方 Code 就是一个非常简单的函数调用。

## 输入 与 输出:

#include <iostream>

using namespace std;

int input_df() {
   int InputNumber1;
   cout << "第一个数: ";
   cin >> InputNumber1;

int InputNumber2;
   cout << "第二个数: ";
   cin >> InputNumber2;

   cout << "return: " << InputNumber1 * InputNumber2 << endl;
   return 0;
}

int main() {
   std::cout << "Hello Word\n";
   input_df();
   return 0;
}

要将简单的文本数据写入到控制台,可使用 std::cout(读作 standard see-out);要从控制台读取文 本和数字,可使用 std::cin(读作 standard see-in)


相关文章

MySQL运维实战之ProxySQL(9.8)SQL镜像

使用proxysql的镜像(mirror)功能,可以将SQL发送到一个额外的后端实例执行。还可以将发送到镜像的SQL进行改写,以测试修改后的SQL是否能正常执行。通过mirror_flagOut字段,...

Python 调用阿里云 OpenAPI 巡检到期云资源

Python 调用阿里云 OpenAPI 巡检到期云资源

前言本篇文章介绍我写的一个程序,通过调用阿里云 OpenAPI 巡检即将到期的云资源。https://github.com/COOH-791/cloud_instance_sentry1. 用途说到云...

Kafka优化参数

一、配置文件Kafka的配置文件为 config/server.properties,在此文件中进行 Kafka 的基础配置,例如端口、日志目录、Zookeeper 信息和 Broker ID 等还可...

Elasticsearch如何使用内存

ES作为一个JAVA程序,其对内存的使用和管理依赖底层JVM。因而设置内存时需要遵从JAVA的普适原则,如-xmx和-xms设置为相同值等。在JVM的基础上,ES对内存的使用可按功能分为以下几大部分:...

Python 序列化与反序列化

1、为什么要序列化内存中的字典、列表、集合以及各种对象,如何保存到一个文件中?如果是自己定义的类的实例,如何保存到一个文件中?如何从文件中读取数据,并让它们在内存中再次恢复成自己对应的类的实例?要设计...

zabbix监控导出生产环境数据

zabbix监控导出生产环境数据

问题需求导出zabbix数据库中 某个主机组下的端口监控 、 URL监控信息处理过程由于数据量较大,手动统计比较费时,因此考虑通过直接从数据库取出相关数据查找想关联的表,找到各监控项位于哪个数据库表内...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。