我像这样使用 sscanf_s:
double a = 0;
double b = 0;
sscanf_s(elements[1].c_str(),"<%d,%d>", &a, &b);
complex<double> first(&a,&b);
但是当我输入 1,2 时,我得到的值是 4.5 和 1.9。
为什么会出错?
最佳答案
您需要使用正确的转换说明符。 %d
用于 int
。 %lf
用于double
。
关于C++ sscanf_s 值不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20528092/