所以我在这里的矢量计算器遇到了一些麻烦,我不完全确定如何将浮点值附加到矢量。附加功能已制作并正常工作,但我遇到的唯一问题是“如果用户想在向量中放入 0 怎么办?”
现在,我正在使用检查来查看浮点数是否为 0,但显然它不起作用,因为它会拆分出无效的操作数。无论如何我可以看到一个浮点值是否没有输入,或者不是一个数字?到目前为止,这是我遇到问题的部分片段:
//Vector that is intialized
Vector * myVector = alloc_vec();
//character for the options
char optionSelect[100];
//character that picks out the selection.
char select;
//A float for the operations that require an option.
float myScales = 0;
printf("Please enter a selection: ");
fgets(optionSelect, 100, stdin);
sscanf(optionSelect, "\n%c%f", &select,&myScales);
...
else if(select == 'a')
{
if(myScales != 0)
{
myVector = extend_vec(myVector, myScales);
}
else
{
printf("No operand specified.\n");
}
}
我可以做些什么来确保可以添加从 -inf 到 inf 的任何浮点值,但是在选择“a”之后,诸如字母或没有输入等无效内容?