如何将文本分配给" void PrintIntro"功能?

时间:2014-11-11 21:52:08

标签: c++

到目前为止,我输入了这个,

#include iostream

using namespace std;

void PrintIntro(); 

我想现在将一个实际文本分配给PrintIntro函数,以便在我的主程序中我可以输入 PrintIntro()和程序运行时,将显示分配给该函数的文本。

到目前为止,我在" void PrintIntro();"

之后尝试了这个
    { /*PrintIntro*/
    cout <<
         "==================================================" << endl;
    cout <<
        "Welcome to the Math Practice Program!!!!!" << endl;
    cout <<
        "This Program will help you practice elementary math" << endl;
    cout <<
        "==================================================" << endl;
    /*PrintIntro*/

}

然后我在&#34; {&#34;符号表示它是&#34;期待声明。&#34;我一整天都在搜索笔记并弄乱这一切,我无法弄明白。任何帮助,将不胜感激。我正在使用MS Visual studio Express 2013.

4 个答案:

答案 0 :(得分:1)

void PrintIntro()之后添加分号告诉编译器有一个名为PrintIntro的函数,该函数不带参数并返回void,并且您将在以后定义它。这称为forward declaration。这就是发生的事情:

void PrintIntro();
//Compiler: okay, that was a forward declaration

{
    //Compiler: wth is this stuff?
}

您希望发生此

void PrintIntro();
//Compiler: okay, that was a forward declaration

void PrintIntro()
{
    //Compiler: oh, this is the definition for that function you told me about earlier
}

或者你想在没有前瞻声明的情况下这样做:

void PrintIntro()    //no ';'
{
    //Compiler: declaration and function body all in one part - simple!
}

您还应将#include iostream更改为#include <iostream>

答案 1 :(得分:0)

删除;宣布你的功能如下:

void PrintIntro()

声明函数时,不需要用分号结束函数声明行。

所以你的功能看起来像

void PrintIntro(){
    blahblahblah...
}

答案 2 :(得分:0)

您需要删除声明末尾的半列

void PrintIntro(); 

必须像这样

void PrintIntro(){

}

答案 3 :(得分:0)

一些错误,其中大部分是我认为的语法。请注意,#include iostream#include <iostream>实际应为;void PrintIntro()#include <iostream> using namespace std; void PrintIntro(){ cout << "Hello world" << endl; } 丢失。

喜欢这样

{{1}}