问一个C++的简单问题
请问把一个 unsigned long 的数字转换称字符串并得到数字的长度的方法有多少种呢?
我可以用
//_number 是一个 unsigned long
cin >> _number;
char number[20];
itoa(_number,number,10);
int length = strlen(number);
或者可以
char* number;
itoa(_number,number,10);
int length = strlen(number);
得到的length都是正确的,但是似乎 number 已经不是原来的那串东西了。
第一种方法用 count << number[0]; 打印出来只是乱七八糟的东西;
第二种方法用 count << *number 也是乱七八糟的字符,而不是期望的数字。
请问应该如何做呢?没有 string 这些类真是用的好累。(我知道c++还是有一个 string 类的,但那个似乎只是一个自定义的类,而且好像没有 string s = string (long) 这样 override 的 constructor, 否则我也想用那个东西)
我是C++的新手,请多指教。
一般使用字符串的时候是用什么方法呢?用指针的多还是都是先定义好大小那样用呢?