Вы должны вызвать c_str()
на объекте string
, чтобы получить const char*
:
externalEncryptionRawHolder[u] = atoi(parser.next().c_str());
Заметьте, однако, что вы не должны делать это:
const char* c = parser.next().c_str();
Поскольку c
будет указывать на память, которой управляла string
, возвращаемая parser.next()
, которая уничтожается в конце выражения, поэтому c
указывает на освобожденную память,Первый пример вполне подходит, потому что строка не уничтожается до тех пор, пока не вернется atoi
.