首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求大神,字符串转成其他类型如何转

2013-06-25 
求大神,字符串转成其他类型怎么转#include iostreamusing namespace stdint _tmain(int argc, _TCHAR*

求大神,字符串转成其他类型怎么转


#include <iostream>
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
char  szNum[10] = "123456789";
cout << *(short*)(szNum + 4) <<  "," << *(short*)(szNum) << endl;
int n = *(short*)(szNum + 4) - *(short*)(szNum);//1028
cout << n << endl;
return 0;
}

我想问下

cout << *(short*)(szNum + 4) <<  "," << *(short*)(szNum) << endl;

这两个值怎么计算

[解决办法]
“*(short*)(szNum + 4)”
- szNum的类型是char *指针
- (szNum + 4)指向的是'5'的地址
- (short*)(szNum + 4)转换为short *类型指针,指向'5'首地址的两个连续字节空间
- *(short*)(szNum + 4)为'56'的值,'5'=0x35,'6'=0x36,因此它的值是0x3635=13877.

“*(short*)(szNum)”
- 同理,*(short*)(szNum)=0x3231=12849.

热点排行