【发布时间】:2013-11-07 04:53:36
【问题描述】:
在 C++ 中制作数字时钟,但出现以下错误: 预期的 ;在重新开始之前 语句是对函数“时间”的引用,而不是调用 声明无效 ''reloj'' 未声明(首先使用此函数) 每个未声明的标识符对于它出现的每个函数只报告一次
#include<iostream>
#include<Windows.h>
using namespace std;
struct time
{
int hr,mint,seg;
};
int main()
{
time reloj;
reloj.hr = 0;
reloj.mint = 0;
reloj.seg = 0;
for(int i = 0; i<24; i++)
{
if(reloj.hr == 23)
{
reloj.hr = 0;
}
for(int j = 0; j<60; j++)
{
if(reloj.mint == 59)
{
reloj.mint = 0;
}
for(int k = 0; k<60; k++)
{
if(reloj.seg == 59)
{
reloj.seg = 0;
}
cout<<reloj.hr<<" : "<<reloj.mint<<" : "<<reloj.seg<<endl;
reloj.seg++;
Sleep(1000);
system("Cls");
}
reloj.mint++;
}
reloj.hr++;
}
}
【问题讨论】:
-
我敢打赌这与
std::time有关。 -
你的“时钟”会因为睡眠时间太长而漂移(其他代码位需要时间以及睡眠时间最少的事实。有时会需要更多时间,因为执行另一个进程的计算机)
-
time=>struct time在声明中reloj -
我得到了代码,编译它并且运行良好。我使用了 VS-2013 快递。你用的是什么编译器?此外,克里斯的建议似乎是可能的。尝试将您的结构重命名为“时间”以外的其他名称。