2进制的long整型以CString表示,怎么转换成long型

lilizz 2003-08-19 05:35:49
比如:CString str = "00001111000000001111111100000000";

str表示的long型整数应等于251723520

用CString的sprintf方法可以转换,不知怎么转。

请dx告知。
...全文
121 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
AkiraChing 2003-08-19
  • 打赏
  • 举报
回复
CString strString=_T("00001111000000001111111100000000");
TCHAR* szStop=NULL;
long nVal=0;
nVal=_tcstol(strString,&szStop,2);
  • 打赏
  • 举报
回复
#include <stdlib.h>
#include <stdio.h>

void main( void )
{
char *string, *stopstring;
double x;
long l;
int base;
unsigned long ul;
string = "3.1415926This stopped it";
x = strtod( string, &stopstring );
printf( "string = %s\n", string );
printf(" strtod = %f\n", x );
printf(" Stopped scan at: %s\n\n", stopstring );
string = "-10110134932This stopped it";
l = strtol( string, &stopstring, 10 );
printf( "string = %s", string );
printf(" strtol = %ld", l );
printf(" Stopped scan at: %s", stopstring );
string = "10110134932";
printf( "string = %s\n", string );
/* Convert string using base 2, 4, and 8: */
for( base = 2; base <= 8; base *= 2 )
{
/* Convert the string: */
ul = strtoul( string, &stopstring, base );
printf( " strtol = %ld (base %d)\n", ul, base );
printf( " Stopped scan at: %s\n", stopstring );
}
}


Output

string = 3.1415926This stopped it
strtod = 3.141593
Stopped scan at: This stopped it

string = -10110134932This stopped it strtol = -2147483647 Stopped scan at: This stopped itstring = 10110134932
strtol = 45 (base 2)
Stopped scan at: 34932
strtol = 4423 (base 4)
Stopped scan at: 4932
strtol = 2134108 (base 8)
Stopped scan at: 932

StdAfx 2003-08-19
  • 打赏
  • 举报
回复
to vcforever(霓裳羽衣):
我怎么一直没有看到过 atol 带三个参数的啊.
你记错了。
vcforever 2003-08-19
  • 打赏
  • 举报
回复

CStirng strSource = "00000000001111111111111100011111";
char* result ;
long ret = atol(strSource,result,2)
就OK了。其实和StdAfx的做法是一样的!
呵呵……
FAICHEN 2003-08-19
  • 打赏
  • 举报
回复
atol
StdAfx 2003-08-19
  • 打赏
  • 举报
回复
char *end;
CString str = "00001111000000001111111100000000";
long a = strtol(str,&end,2);//现在 a = 251723520 了

16,472

社区成员

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

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

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