您的位置:首页 > 编程语言 > C语言/C++

c++中基本的语法问题

2016-03-09 14:21 441 查看


的输出是?

答案:构造函数的初始化列表




字符串转化为整形的代码:

enum Status{ kValid = 0,kInvalid };

int g_nStatus = kValid;

int StrToInt(const char* str)

{

g_nStatus = kInvalid;

long long num = 0;

if (str != NULL&&*str != '\0')

{

bool minus = false;

if (*str == '+')

str++;

else if (*str == '-')

{

str++;

minus = true;

}

if (*str != '\0')

{

num = StrToIntCore(str, minus);

}

}

return (int)num;

}

long long StrToIntCore(const char* digit, bool minus)

{

long long num = 0;

while (*digit。 = '\0')

{

if (*digit >= '0'&&*digit <= '9')

{

int flag = minus ?

-1 : 1;

num = num * 10 + flag*(*digit - '0');

if ((!minus&&num > 0x7FFFFFFF) || (minus&&num < (signed int)0x80000000))

{

num = 0;

break;

}

digit++;

}

else

{

num = 0;

break;

}

}

if (*digit == '\0')

{

g_nStatus = kValid;

}

return num;

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: