在C++中,我只通过将字符串对象转换为字符数组来完成此操作。带数组的教程对我来说有点难理解。但是我想在没有数组的情况下进行转换。C++将std :: string转换为int,double等没有使用char数组
我确实知道如何去做:字符串是“1234”。之后,我将这个文本转换为一个整数这样:
if (symol4 == "4") int_var += 4 * 1;
if (symol3 == "3") int_var += 3 * 10;
if (symol3 == "2") int_var += 2 * 100;
if (symol3 == "1") int_var += 1 * 1000; //Don't worry, I'm familiar with cycles, this code is only for explaining my algorithm
我希望你能理解这个想法。
但我不知道这是否是最好的方法。我不知道是否有一个函数库允许我这样做(如果有的话,我不会感到惊讶)。
我不知道是否不使用char数组是个好主意。但这是一个不同的问题,我稍后会问。
什么是将字符串转换为整数,双精度等不使用字符数组的最佳方式。
但是根据定义,字符串**是**字符数组! – littleadv
你指的是std :: string吗?因为否则字符串确实是一个字符数组。 – Hari
littleadv,我知道。但我想要做到这一点,没有另一个字符阵列。 – AlexSavAlexandrov