itoa功能问题

我正在使用C ++项目的Ubuntu环境中的Eclipse。

我使用itoa函数(在Visual Studio中完美工作),编译器抱怨itoa未声明。

我包括<stdio.h><stdlib.h><iostream> ,这没有帮助。


www.cplusplus.com说:

这个函数没有在ANSI-C中定义,也不是C ++的一部分,但是被一些编译器支持。

因此,我强烈建议你不要使用它。 但是,您可以使用stringstream很直接地实现这一点,如下所示:

stringstream ss;
ss << myInt;
string myString = ss.str();

提升方式:

string str = boost::lexical_cast<string>(n);


itoa()不是任何标准的一部分,所以你不应该使用它。 有更好的方法,即..

C:

int main() {
    char n_str[10];
    int n = 25;

    sprintf(n_str, "%d", n);

    return 0;
}

C ++:

using namespace std;
int main() {
    ostringstream n_str;
    int n = 25;

    n_str << n;

    return 0;
}
链接地址: http://www.djcxy.com/p/20969.html

上一篇: itoa function problem

下一篇: Lifetime of temporaries