我最近开始学习C ++,但我遇到了一个问题。 下面给出的程序没有给出我想要的结果,因为我只在结果中看到'Hi'而不是在void函数中写的是什么。 请告诉我发生这种情况的原因以及解决方案。

我正在使用Xcode 6.3.1,我选择了C ++语言。

#include <iostream>
using namespace std;

void ABC () {
    cout << "Hey there ! \n";
}

int main () {

    cout << "Hi \n";

    void ABC ();

    return 0;
}

===============>>#1 票数:8

您正在重新声明main()void ABC()函数。 只需拨打ABC(); 没有void

您可以查看有关在另一个范围内声明函数的此问题

===============>>#2 票数:6

在你的代码中你的函数调用是错误的。

调用函数时,无需添加返回类型:

#include

void ABC () {

  cout << "Hey there ! \n";

}

int main () {

  cout << "Hi \n";

  ABC ();

  return 0;
}

===============>>#3 票数:4 已采纳

你需要调用你的方法而不是在main中声明它

#include <iostream>
using namespace std;
void ABC () {
    cout << "Hey there ! \n";
    }
     int main () 
    {
         cout << "Hi \n";
        ABC ();
         return 0;
        }

编辑1:自从你开始学习C ++以来,我推荐以下建议,以确保你的代码更清晰。 请注意,这些不是任何规则,而是更多的最佳实践和编码风格。

  • 为你的变量,方法,函数,类使用有意义的名称...因此,如果你(或其他人正在阅读它),它将命名为它,而不是ABC()。
  • 调用方法和函数时,尝试使用适当的返回值声明它们。 根据定义,Void不会返回任何值,只是处理它内部的代码。 所以你的方法/函数应该返回它所假设的适当值。

这是代码的第2版,包含3种不同方法和调用的示例:

#include <iostream>

using namespace std;
int sum;
string  MethodReturningString() 
{
    return "Hey there i am the result of a method call !";
}

int  MethodReturningInt() 
{
    return 5;
}

void CalculateSum(int x,int y)
{
  sum=x+y;
}
int main()
{
   cout << MethodReturningString()  << endl; 
   cout << MethodReturningInt()  << endl; 
   cout << "Calculating sum:" ; 
   CalculateSum(5,4);
   cout << sum << endl; 
   return 0;
} 

快乐的编码

===============>>#4 票数:4

在C ++中,与几乎任何其他语言一样,在调用函数时不指定返回类型。 所以改变读取的行:

void ABC ();

至:

ABC();

===============>>#5 票数:0

尝试这个:

#include <iostream>
using namespace std;

void ABC () {

cout << "Hey there ! \n";
}

 int main () {

 cout << "Hi \n";

 ABC();

 return 0;
}

您应该通过声明其名称并添加括号来调用函数。

===============>>#6 票数:0

而不是使用void ABC()来调用main()中的函数ABC(),使用以下代码:

#include       

void ABC ()
{
     cout << "Hey there ! \n";
}

int main ()
{
        cout << "Hi \n";
    ABC ();
    return 0;
}

  ask by Yash Jaiswal translate from so

未解决问题?本站智能推荐:

1回复

C ++中的错误编程

我正在编写一个比较两个字符串的程序,并且如果s1 [i] == s2 [i]的位置必须将1加到计数器上,那么我必须使用代码中使用的函数。 如果第一个字符串大于第二个字符串,则给我一个错误,例如s1 = TAGCA s2 = GAC,则此错误: /usr/include/c++/4
2回复

C ++编程错误

我是C ++编程的新手。 因此,我尝试通过运气执行一些小程序。 我正在使用HP-UX ,该计算机的可执行文件名为aCC 。 我正在尝试执行一个小程序 当我编译它给我一个错误: 到底是什么问题? std是不是在ACC编译器中被视为命名空间,还是aCC有一些严重的缺点?
1回复

Websocket服务器在C ++编程中的错误

我正在尝试创建一个websocket服务器程序。 这是握手代码。 但是,当我尝试使用chrome连接时,连接将被删除。 看看这个,看看你是否能找到任何错误。 用于测试目的: key =“dGhlIHNhbXBsZSBub25jZQ ==” 唯一键=“258EAFA5-E
1回复

在C ++中对Quicksort编程时出现分段错误

我正在尝试用C ++编程此页面上的第一个算法。 这是我将其适应这种语言时得到的: 但这给出了错误Segmentation fault (core dumped) 。 我仅在大小为20的矢量上对此进行测试,因此不应该是我的内存不足。 我能够发现的是导致问题的是对quicksort(r
2回复

C ++中的元编程

我是C ++的新手,需要元编程帮助。 我已经检查了枚举示例,其中调用factorial<4>::value产生24 。 我需要对代码进行修改,以便factorial<4>()返回24 。 现在已经尝试了一段时间,并且也不知道如何在Internet上精确搜索它。
1回复

OPNET中的C编程

我正在开始对OPNET中的节点进行手动编程的工作,但是遇到了一些麻烦。 我从数据包中获取了一些信息,并将其存储在变量中,并希望将其输出到模拟控制台。 当我添加puts(bcast_info)行时,出现以下错误。 在添加上面提到的行之前,模拟工作完美,我得到了基本的文本输出。 到目前
10回复

Vista中的C / C ++编程

我来自一所Java学校,但我也想在C / C ++开发方面沾沾自喜。 你能建议: 轻量级初学者IDE [例如:JCreator for Java](简单和小型下载) 一个成熟的高级IDE [例如:Eclipse for Java](每个功能和大量下载) 我应该使用GC
1回复

在C / C ++中为UPnP编程

我有一个需要在随机端口上进行对等连接的应用程序,所以我认为我需要UPnP,以便我可以自动转发和打开这些端口,以便它们可以连接到其对等端。 我还没有找到有关如何执行UPnP的好的示例或教程,关于libupnp之类的许多文档并不是很有帮助。 因此,如果您有什么地方可以学习编程可以使用UPnP的应
1回复

套接字编程C ++中的select()总是给出时间错误

我有这个套接字程序,它具有发送和接收两个部分,但是当我使用select时,它总是返回“时间错误”。 这是代码 我已经尝试了很多东西,但是我的select()总是返回相同的东西。 如果我不直接运行send()和recv(),我的程序就没有run()和select()可以正常工作。 但
1回复

“C ++编程语言”部分“23.4.7朋友”中的错误

我一直试图从“The C ++ Programming Language(4th Edition)”一节“23.4.7 Friends”中获得以下代码,但是无法成功。 以下是上述API的示例用法: g ++版本: 给出了以下输出: 与版本铿锵: 给出了以下