2014-04-28 28 views
-3

我对C++非常陌生,并且遇到一些非常简单的问题。我在ubuntu 14.04上运行。我已经看到了几个如下代码的例子。但我只有错误。初始化后无法更改C++变量

int x; 
x = 12; 

// output 
error: ‘x’ does not name a type 

我想做简单而有用的代码,但这让我坚持下去。为什么我不能做

int z = 12; 
z = 4; 

// output 
error: ‘z’ does not name a type 

我遵循相当数量的C++教程并成功运行代码。但是现在我发现我不能简单地改变一个变量。编写代码非常困难!当然,我确实试图“键入”导致此错误的行的变量。

int z = 12; 
int z = 4; 
// output 
error: redefinition of ‘int z’ 

该死的如果我这样做,如果我不这样做。任何人有任何帮助?

编辑:好的人,你用倒票杀我。我是全新的C++和做很多功课,在这篇文章之前,我没有找到任何解决办法。这是一个捕捉22:因无知而失败,不能在没有帮助的情况下击败无知! BIG感谢您的评论和答复。现在我懂了。

+2

代码进入功能。 – chris

+0

非常感谢克里斯。这是一个什么阻力。阻止我的新语言学习停止。我把代码放在一个函数中,它可以工作。现在它是起起落落的。 =)欢呼。 –

+0

不幸的是,编译器选项非常糟糕,它使用C编译(尽管它仍然需要一个主函数)。 C不同的另一种方式。 – chris

回答

1

您必须将您的代码放入函数中。最有可能的主要功能,因为你仍然开始语言尝试:

#include <iostream> 

int main() 
{ 
int x; 
    x = 12; 
    //enter what ever code is next 
    return 0; 

} 
+0

我把代码放在它自己的函数之前的“主”,也在主。两者都有效。感谢Jecht。 –

2

您需要将其放入main函数才能开始。请尝试:

int main() 
{ 
    int x; 
    x = 42; 

    return 0; // success 
} 
+0

从技术上讲,int x;'行,甚至是'int z = 12;'在函数外是完美的。在我这里,这只是魔鬼的拥护者而已。 – usr2564301

+0

@Jongware我知道,但不要打扰一个初学者。对于OP来说,现在并不重要,而实际编译和执行的内容是最重要的一步。 –

+0

谢谢丹尼尔。这将工作。但是更一般的“在一个函数中”更为普遍的正确的我所理解的。所以我会接受另一个答案。 –