求助一个问题(关于类型转换)
本帖最后由 andalousie 于 2015-1-29 14:43 编辑我在编程的时候遇到一个问题#include <iostream>
#include <cstdlib>
int do_constant(char *ptr)
{
char *endp;
*(unsigned long *)ptr = strtoul(ptr, (char **)&endp, 2);
return *(unsigned long *)ptr;
}
int main()
{
char *buff = "1111";
std::cout << do_constant(buff) << std::endl;
system("pause");
}
为什么不能输出15?同样的程序在8进制、16进制时就能运行,是为什么?
应该没有问题的,你跑出来的结果是多少 night2008 发表于 2015-1-29 17:01
应该没有问题的,你跑出来的结果是多少
多谢,我已经解决了。
页:
[1]