当我输入输入时,问题会在我输入字符串之前重复。
printf("Enter %d coefficients starting from the 0th degree.\nSeparate them by commas: ", degree+1);
fgets(coeffs_string, MAX, stdin);
for(i=0;i<strlen(coeffs_string);i++){
if(coeffs_string[i]==','){
commas++;
continue;
}
else if(isdigit(coeffs_string[i]) || coeffs_string[i]==' ')
continue;
else{
printf("\007Error! A character was found during the input!\n");
coeffs_string[0]='\0';
commas=0;
break;
}
}
另外,即使输入正确的输入,它也会打印错误处理程序。我尝试使用scanf,但它只是停止。有没有办法让fgets或scanf不能快速读取输入? *编辑:抱歉:我忘记了代码的某些部分
答案 0 :(得分:0)
fflush(stdout);
和printf()
之间加fgets()
fgets()
陈述。或者,在输出的单独行中获取输入。open: function(html, $scope) {
var el = angular.element(html);
$compile(el)($scope);
$timeout(function() {
$.fancybox.open(el);
}, 0);
}
返回的字符串包含
用户通过按Enter键生成的行终止符字符
键。您没有明确处理这些字符,因此将始终显示错误消息。