Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 错误:从常量字符*到int的转换无效_C++ - Fatal编程技术网

C++ 错误:从常量字符*到int的转换无效

C++ 错误:从常量字符*到int的转换无效,c++,C++,从const char*到int的转换无效。我知道错误是什么,但不知道如何修复它。谢谢你的帮助 错误在以下行中: BigNum temp=str.c_str() 。。。。您正在将字符串指定为BigNum。你为什么这么做 C++不允许您在整数和指针之间进行隐式转换,如果您正试图这样做的话 C++也不是那种只需将字符串赋给int并将其转换的语言,如果您正试图这样做的话。您需要执行某种形式的词法转换。错误在于编译器找不到: 1.包含char*参数或 2.采用char*的BigNum构造函数 我建议为s

从const char*到int的转换无效。我知道错误是什么,但不知道如何修复它。谢谢你的帮助

错误在以下行中:

BigNum temp=str.c_str()


。。。。您正在将字符串指定为BigNum。你为什么这么做

C++不允许您在整数和指针之间进行隐式转换,如果您正试图这样做的话


C++也不是那种只需将字符串赋给int并将其转换的语言,如果您正试图这样做的话。您需要执行某种形式的
词法转换。

错误在于编译器找不到:
1.包含
char*
参数或
2.采用
char*
BigNum
构造函数

我建议为
std::string
添加赋值运算符。您可能还需要一个构造函数和复制构造函数,该构造函数接受
std::string
参数


在web上搜索“C++规则3”。

似乎您只需要将类型为
std::string
的对象str转换为类型为int的对象并调用相应的构造函数

试试下面的方法

BigNum temp( stoi( str ) );
或者如果构造函数不是显式的,那么

BigNum temp = stoi( str );
而不是

BigNum temp = str.c_str();

既然你没有说什么是
BigNum
,那就很难帮上忙了。你到底为什么认为你应该能够分配一个指向该类型对象的指针?@user3403896 BigNum的构造函数是如何定义的。如果
BigNum
类有一个重载的赋值运算符,它接受字符串指针,或者一个接受字符串指针的构造函数一个字符串指针,然后是的,您可以将一个字符串指定为a
BigNum
Sure,但通常BigNum类似于。本质上是python int的“无限精度”的复制品。当然,但通常BigNum类似于。本质上是C或C++库。
BigNum temp = str.c_str();