2015-08-09 58 views
-1

我非常喜欢C++,所以我想学习,因为即时学习软件工程,我买了一本书,我试图在dev C++中做这个例子,并且我得到一个错误,我找不到解决方案净。下面是代码和错误;有关书中的示例的错误

#include <stdio.h> 
#include <conio.h> 

main() 
{ 

    char a; 
    int i; 
    i =-+; 
    while (i=255) {i++; 
    printf("%.3d. Alphabet: %c\n",i,i); 
    a= getch(); 

    }; 
} 

书中说输出就像;

  1. 字母:甲
  2. 字母:乙 等..

问题是,当我按下编译它表示;

[Error] expected primary-expression before ';' token 

有人能告诉我它是什么吗?

+0

几个复制粘贴错误:i = - +;虽然(i = 255) –

回答

0

我认为你正在寻找的代码如下:

char a; 
int i; 
i =0; 
while (i!=255) {i++; 
    printf("%.3d. Alphabet: %c\n",i,i); 
}; 
a= getch(); 

首先,您必须默认零值分配给我 ,那么你需要循环数从零到255,这样,而不是同时(我= 255)必须使用while(i!= 255) 并且getch out out loop也显示所有字符,然后等待您的点击退出应用程序

+0

谢谢!多数民众赞成在我寻找的解决方案 我注意到自己;设置我= 0,然后添加+1感谢您的帮助 –

+0

如果这是解决方案,请您选择我的答案作为解决方案 –

0
[Error] expected primary-expression before ';' token 

究竟是什么错误说:编译器需要一个“完全”的表达,在那里他发现了一个;。通常情况下,编译器(在你的情况下,gcc)也会发出行号,这会直接指向你的问题所在。

i =-+; 

既不合理也不合法C++;也许你想写

i =- 1; 

或类似的?

此外,请务必使用a recent version of dev C++或其他IDE(还有其他更流行的IDE)。

+0

感谢编辑文章(我不知道如何把这些这样的。)也是我= -1作品 和我下载最新版本的dev C++ –

0

您没有说错误在哪一行,但我猜这是在i =-+行,因为这是无意义的:-+是不是一个数字你可以分配给一个变量。

此外,while (i=255)将永久循环,每次将i设置为255。 (之后的i++意味着每次您的printf声明中的i将为256)。您可能意思是while (i < 255)

很可能,您错误地输入了您书中的代码。如果这些错误实际上印在书中,你应该得到一本更好的书,其编辑没有让任何明显的错误漏掉。

+0

对对不起,它是在那一行,但我找到了解决方案,我= - +没有任何意义感谢您的建议,它真的帮助了我 –