【发布时间】:2015-05-15 08:24:25
【问题描述】:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include "bcio2.h"
int error, x;
char totalimpulse[80], averageimpulse[80];
void validate_number();
int main(void)
{
clrscr();
do{
printf("\nTotal Impulse delivered: ");
gets(totalimpulse);
validate_number();
} while (error != 0);
printf("You entry %d was valid\n", x);
getch();
return 0;
}
{ //error C2447
clrscr();
do{
printf("\nAverage Impulse delivered: ");
gets(averageimpulse);
validate_number();
} while (error != 0);
printf("You entry %d was valid\n", x);
getch();
return 0;
}
括号匹配,似乎没有任何不必要的分号。我假设这是显示输入/验证的正确方法。仅使用 do...while(); 循环运行 totalimpulse 时,它工作正常,但是当我在另一对 { } 之间复制/粘贴完全相同时,我得到了C2447 错误。
【问题讨论】:
-
那个块在main之外。
-
BTW:头文件conio.h不可移植(一般在windows OS之外不存在)建议删除相关#include并使用标准系统函数。
标签: c function validation input header