我正在编写一个执行二次公式的程序。我唯一的问题是程序的实际格式。允许我输入加减号和平方根符号的 alt 键给我带来了一些问题。
问题存在于
cout<< 0-b << char(241) << char(251) << char(0178);
键入平方符号 (²) 的最后一个字符报告无效八进制数字错误。有没有办法解决这个问题,还是我必须通过简单地写“x^2”来满足?
最佳答案
您应该只从 0178
中删除前导 0
。数字常量的前导零被自动视为八进制,8
不是有效的八进制数字。
此外,superscript-2 character你指的是十进制 178,U+00B2
。另一种方法是在您的代码中使用 '\xb2'
。
当然,您还必须确定解释该输出流的任何内容都知道您尝试输出的 Unicode 字符。这可能取决于您的终端程序或控制台。如果没有,您可能不得不求助于 (x^2)
之类的 hack,或者更糟糕的是,诸如:
3 2
3x - 7x + 42x - 1
y = -------------------
12
关于c++ - 键入 Alt 键时可能会在 char 中解决 "Invalid Octal Digit",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14825513/