2011-11-07 189 views
2

我不知道爲什麼我得到錯誤C2143:語法錯誤:缺少「;」之前「==」 將不勝感激,如果有人可以解釋我的錯誤。我不斷收到一個語法錯誤,但我不知道爲什麼

#include <iostream> 
#include <string> 
#include <cstdlib> 

int main() { 

std::cout << "What is your name? "; 
std::string name; 
std::cin >> name; 
const std::string greeting = "Hello " + name + " !"; 
// 
const int pad = 1; 
const int rows = pad * 2 + 3; 
std::cout << std::endl; 
// 
int r = 0; 
while (r != rows) { 
    std::cout << std::endl; 
    ++r; 
} 
// 
std::string::size_type cols = greeting.size() + pad * 2 + 2; 
std::string::size_type c == 0; 
while (c != cols) { 
    if (r == 0 || r == rows -1 || c == 0 || c == cols -1) { 
    } else { 
    } 
} 

std::system("pause"); 

return 0; 
}; 
+3

,錯誤的行號將是最有幫助的。 – KevinDTimm

回答

10

我懷疑問題就在這裏:

std::string::size_type c == 0; 

這也許應該是:

std::string::size_type c = 0; 
7

這條線:

std::string::size_type c == 0; 

應該是:

std::string::size_type c = 0; 
3

您還沒有初始化的 'C' 呢。

的std :: string :: size_type的Ç== 0;

應該是

std :: string :: size_type c = 0;

+1

True(+1),但不需要初始化變量;這只是一個無效的語法結構。 – 2011-11-07 19:59:44

+0

ahhh是的。謝謝! –

0

問題是

std::string::size_type c == 0; 

時,應

std::string::size_type c = 0; 

它需要一個平等的運營商在未來(賦值運算符)

相關問題