从 int 转换为 CString
Converting from int to CString
TestString::TestString(int num)
这是一个转换构造函数,应该将整数转换为字符串。
例如,如果传入 123,则 TestString 对象应存储将由 c-string "123".
表示的字符串数据
class TestString //header file
{
public:
TestString (int num);
//etc.
private:
int size;
char* str;
};
TestString::TestString (int num) //.cpp file
{
char c = static_cast<char>(num);
str = new char[size]; //missing size variable
int i = 0;
for (i; cstr[i] != '[=11=]'; i++) //missing cstr array
str[i] = cstr[i];
str[i] = cstr[i]; //to tack on null character
}
如您所知,我在定义中缺少 size 变量和 cstr 字符串。我不知道我是不是做错了,或者只是无法理解我被要求进行什么样的设置...
非常感谢任何指点或建议。
只允许图书馆:
#include <iostream>
#include <iomanip>
#include <cstring>
#include <cctype>
据我了解,您希望获得输出字符串所需的长度。我想没有 <cmath>
的唯一方法是使用 while 循环:
int len=0;
int num2=num;
do{
num2=num2/10;
len++;
} while (num2>0);
这基本上是将数字除以 10 以获得它的位数。
然后,对于每个字符,您可以这样做:假设您想要 0 的字符,只需使用 '0'
。如果您想要“1”的字符,请使用 '0'+1
,这将 return 1
。
如果您需要更多帮助(完整实施),请在下方发表评论,我会尽快与您联系。玩得开心!
除了纯香草 C++,您不需要任何其他东西,只需使用 std::to_string
:
std::string ouputString = std::to_string(inputInteger);
现在你可以用 std::string::c_str:
拉出 C 弦
ouputString.c_str()
TestString::TestString(int num)
这是一个转换构造函数,应该将整数转换为字符串。
例如,如果传入 123,则 TestString 对象应存储将由 c-string "123".
表示的字符串数据class TestString //header file
{
public:
TestString (int num);
//etc.
private:
int size;
char* str;
};
TestString::TestString (int num) //.cpp file
{
char c = static_cast<char>(num);
str = new char[size]; //missing size variable
int i = 0;
for (i; cstr[i] != '[=11=]'; i++) //missing cstr array
str[i] = cstr[i];
str[i] = cstr[i]; //to tack on null character
}
如您所知,我在定义中缺少 size 变量和 cstr 字符串。我不知道我是不是做错了,或者只是无法理解我被要求进行什么样的设置...
非常感谢任何指点或建议。
只允许图书馆:
#include <iostream>
#include <iomanip>
#include <cstring>
#include <cctype>
据我了解,您希望获得输出字符串所需的长度。我想没有 <cmath>
的唯一方法是使用 while 循环:
int len=0;
int num2=num;
do{
num2=num2/10;
len++;
} while (num2>0);
这基本上是将数字除以 10 以获得它的位数。
然后,对于每个字符,您可以这样做:假设您想要 0 的字符,只需使用 '0'
。如果您想要“1”的字符,请使用 '0'+1
,这将 return 1
。
如果您需要更多帮助(完整实施),请在下方发表评论,我会尽快与您联系。玩得开心!
除了纯香草 C++,您不需要任何其他东西,只需使用 std::to_string
:
std::string ouputString = std::to_string(inputInteger);
现在你可以用 std::string::c_str:
拉出 C 弦ouputString.c_str()