通过一个最简单的Hello World程序,我们已经了解了C++基本的代码风格、简单的输入输出操作,以及程序编译运行的完整过程。利用这些知识我们可以为这个程序增加更多的功能,比如提示用户输入自己的名字XXX,然后显示“Hello, XXX”。
代码如下:
#include<iostream>
using namespace std;
int main()
{
// 输出一行信息
cout << "Hello World!" << endl;
// 提示输入姓名
cout << "请输入您的大名:" << endl;
// 用一个变量接收键盘输入
string name;
cin >> name;
// 输出欢迎信息
cout << "Hello, " << name << endl;
// 等待键盘输入
cin.get();
cin.get();
// 这里写两次是因为之前输入信息时敲回车确认,会由第一个get捕捉到
return 0;
}
但是这样代码就比较多了,可读性会变差。解决办法是,我们可以把中间一部分代码“包装”成函数,就像主函数一样。只不过这种函数不是启动直接调用的,而是需要在程序中明确地写出来什么时候调用。
代码如下:
#include<iostream>
using namespace std;
// 定义一个函数
void welcome()
{
cout << "Hello World!" << endl;
cout << "请输入您的大名:" << endl;
string name;
cin >> name;
cout << "Hello, " << name << endl;
}
int main()
{
// 调用函数
welcome();
// 等待键盘输入
cin.get();
cin.get();
return 0;
}
这样每一部分处理逻辑都可以分块包装成函数,主函数的执行过程看起来就简单多了。当然,如果认为一个文件中有太多函数也会影响可读性,我们还可以把它们分开。比如新建一个叫做welcom.cpp的源文件,专门放刚才的welcome函数。而在主函数中,需要额外对它做一个“声明”,表示有这样一个函数,它的实现在另外的文件里。
#include<iostream>
// 声明一个函数
void welcome();
int main()
{
// 调用函数
welcome();
cin.get();
cin.get();
return 0;
}
函数是C++中基本的编程单元,也是“模块化编程”的核心思想,我们还会在后面的章节详细展开。