c++;计算器没有错误,但它在中间线崩溃(52) >x可能会崩溃。另外,空行太多。如果你推荐任何书籍或网站来学习,我会很乐意首先使用x,你应该以结构化的方式组织你的程序在各地使用goto不仅使代码更难理解和跟踪,而且可能没有人想看你的代码,因为它与此类似:我不完全理解什么是iostream,但我会检查并测试它,谢谢you@metalecC++有两个输入输出库。code>,它提供了std::cin和std::cout,还提供了(或),它具有C标准库中的输入/输出函数,例如printf和scanf和put。atof函数是C标准库的一部分,甚至不是它的好部分。atof做的每件事,strtod做得更好,它也是一个标准函数在C和C++中都有。但是由于您似乎对代码> CIN < /代码>了解得更多,所以您应该使用它,远离C函数。

c++;计算器没有错误,但它在中间线崩溃(52) >x可能会崩溃。另外,空行太多。如果你推荐任何书籍或网站来学习,我会很乐意首先使用x,你应该以结构化的方式组织你的程序在各地使用goto不仅使代码更难理解和跟踪,而且可能没有人想看你的代码,因为它与此类似:我不完全理解什么是iostream,但我会检查并测试它,谢谢you@metalecC++有两个输入输出库。code>,它提供了std::cin和std::cout,还提供了(或),它具有C标准库中的输入/输出函数,例如printf和scanf和put。atof函数是C标准库的一部分,甚至不是它的好部分。atof做的每件事,strtod做得更好,它也是一个标准函数在C和C++中都有。但是由于您似乎对代码> CIN < /代码>了解得更多,所以您应该使用它,远离C函数。,c++,C++,发生的情况是,cin读取一个字符串并将其存储在由x标识的缓冲区中。但是x未初始化,它不会特别指向任何地方,当然也不会指向可写缓冲区 您的所有x=='*'测试也都已中断 您应该做的是首先尝试使用iostreams读取一个数字,如果失败,则改为读取一个字符串 if (!(cin >> f)) { cin.clear(); cin >> operacija; } goto l;goto a;请不要……不要使用gotox是一个未初始化的指针,并且cin>>x可能

发生的情况是,
cin
读取一个字符串并将其存储在由
x
标识的缓冲区中。但是
x
未初始化,它不会特别指向任何地方,当然也不会指向可写缓冲区

您的所有
x=='*'
测试也都已中断

您应该做的是首先尝试使用iostreams读取一个数字,如果失败,则改为读取一个字符串

if (!(cin >> f)) {
    cin.clear();
    cin >> operacija;
}

goto l;
goto a;
请不要……不要使用
goto
x
是一个未初始化的指针,并且
cin>>x
可能会崩溃。另外,空行太多。
如果你推荐任何书籍或网站来学习,我会很乐意首先使用
x
,你应该以结构化的方式组织你的程序在各地使用
goto
不仅使代码更难理解和跟踪,而且可能没有人想看你的代码,因为它与此类似:我不完全理解什么是iostream,但我会检查并测试它,谢谢you@metalecC++有两个输入输出库。code>,它提供了
std::cin
std::cout
,还提供了
(或
),它具有C标准库中的输入/输出函数,例如
printf
scanf
put
atof
函数是C标准库的一部分,甚至不是它的好部分。
atof
做的每件事,
strtod
做得更好,它也是一个标准函数在C和C++中都有。但是由于您似乎对代码> CIN < /代码>了解得更多,所以您应该使用它,远离C函数。