类型转换问题 CString转int

byhsz999 2013-03-07 10:44:06
CString stwr("0xd2d34");

怎么将0xd2d34复制到const int aaa; 里面
结果是 int aaa=0xd2d34;
...全文
144 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
一个傻冒 2013-03-07
  • 打赏
  • 举报
回复
多谢楼主共享。指教了。
byhsz999 2013-03-07
  • 打赏
  • 举报
回复
谢谢搞的 贴上方案 CString stwr; stwr="0x004DA5A0"; const int aaa=_tcstoul(stwr, 0, 16);
byhsz999 2013-03-07
  • 打赏
  • 举报
回复
CString字符串 本身就是一个内存地址 不需要转换吧 应该取出来 strcpy 复制出来不是地址类型 是文本
byhsz999 2013-03-07
  • 打赏
  • 举报
回复
CString stwr; stwr="0x0040A5A0"; const int aaa=_ttoi(stwr); CString ssss; ssss.Format("%x",aaa); AfxMessageBox(ssss); 弹出的不是 0x0040A5A0 我觉得 应该不是转换的问题吧 取字符串到变量int 不知道怎么写
一个傻冒 2013-03-07
  • 打赏
  • 举报
回复
#include <iostream> #include <assert.h> using namespace std; const char* filteZero( const char *pStr ) { assert( pStr ); const char *p = pStr; while( *p != '/0' && *p == '0' ) p++; return p; } void filteSpace( const char *&pStr ) { assert( pStr ); while ( *pStr != '/0' && *pStr ==' ' ) pStr++; } int getSign( const char* &pStr ) { if( *pStr == '-' && *pStr != '/0' ) { pStr = pStr + 1; return -1; } else { if( *pStr == '+') pStr ++; return 1; } } int _atoi(const char *pStr ) { assert(pStr); int rlt = 0; enum _state{ safe, check, overflow } state = safe; filteSpace(pStr); int sign = getSign( pStr ); pStr = filteZero( pStr ); while ( *pStr <= '9' && *pStr >= '0') { if ( state == check ) { if ( sign > 0 && *pStr > '7' ) { rlt = INT_MAX; } else if ( sign < 0 && *pStr > '8' ) { rlt = INT_MIN; } else rlt = 10 * rlt + (*pStr - '1') + 1; break; } if ( state == overflow ) { rlt = sign > 0 ? INT_MAX : INT_MIN; break; } rlt = 10 * rlt + (*pStr - '1') + 1; pStr ++; if ( sign > 0 ) { if ( rlt < INT_MAX / 10 ) state = safe; else if ( rlt = INT_MAX / 10 ) state = check; else state = overflow; } if ( sign < 0 ) { if ( rlt > INT_MIN / 10 ) state = safe; else if ( rlt == INT_MIN /10 ) state = check; else state = overflow; } } return rlt * sign; } void main() { char *p = "-21474837880s"; assert( atoi(p) == _atoi(p) ); cout << _atoi(p) << endl; system("pause"); } atoi函数的实现原理。
byhsz999 2013-03-07
  • 打赏
  • 举报
回复
楼上大大 具体的呢 CString stwr("0xd2d34"); //这里的 0xd2d34 是一个内存地址 怎么将0xd2d34复制到const int aaa; 里面 结果是 int aaa=0xd2d34;
  • 打赏
  • 举报
回复
CString stwr; stwr="0xd2d34"; const int aaa=_ttoi(stwr); ANSI 和 UNICODE 都可以用的代码
一个傻冒 2013-03-07
  • 打赏
  • 举报
回复
atoi函数
byhsz999 2013-03-07
  • 打赏
  • 举报
回复
我自己顶!!!!!

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧