注册 登录
编程论坛 VC++/MFC

VC-任意进制转换器【数字字符转换未用系统函数】

我是菜鸟哦 发布于 2011-03-07 22:44, 1513 次点击
void CHEXDlg::OnOK()
{
    long i;
    int bit,hex,j,bit2,bit2_temp,k;
    int temp[100];
    char temp_char[200]={NULL};
    i=0;
    hex=0;
    str="";

    GetDlgItem(IDC_EDIT2)->GetWindowText(str);
    j=str.GetLength();
    for(bit=0;bit<j;bit++)
    {
        hex=hex+(str[bit]-48)*pow(10,(j-bit-1));
    }
    if(hex<2) hex=2;//防止出错

    GetDlgItem(IDC_EDIT1)->GetWindowText(str);
    j=str.GetLength();
    for(bit=0;bit<j;bit++)
    {
        i=i+(str[bit]-48)*pow(10,(j-bit-1));
    }

    bit=1;//重新记位数
    while(i>pow(hex,bit)-1)
    {
        bit++;
    }
    j=bit;//记录位数
    //分位
    while(i!=0)
    {
        temp[j-1]=i%hex;
        i=i/hex;
        j--;
    }

    i=0;
    k=0;//记录总长度
    bit2_temp=0;
    for(j=0;j<bit;j++)
    {
        bit2=1;//重新记位数
        while(temp[j]>pow(10,bit2)-1)
        {
            bit2++;
        }
        k=bit2;

        if(temp[j]==0)
        {
            temp_char[bit2_temp+k-1]=48;
        }
        while(temp[j]!=0)
        {
            temp_char[bit2_temp+bit2-1]=48+temp[j]%10;
            temp[j]=temp[j]/10;
            bit2--;
        }

        temp_char[bit2_temp+k]=',';
        bit2_temp=bit2_temp+k+1;

    }
    temp_char[bit2_temp-1]=NULL;
    MessageBox(temp_char,"转换完毕");
}
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录


[ 本帖最后由 我是菜鸟哦 于 2011-3-7 22:48 编辑 ]
9 回复
#2
我是菜鸟哦2011-03-07 22:47
本人的MFC的第一个程序哈
#3
hellovfp2011-03-08 11:12
哦,很好很强大,但也很疑或,GetDlgItem,GetWindowText这两个不算是系统函数,兄弟能否帮偶解惑?
#4
我是菜鸟哦2011-03-08 11:23
回复 3楼 hellovfp
是MFC标准函数吧
#5
hellovfp2011-03-08 11:32
回复 4楼 我是菜鸟哦
哦,谢谢,也许你说得对吧,可能是MFC“标准函数”。
#6
我是菜鸟哦2011-03-08 11:36
。。。。。我第一次写MFC,不像是VB一样,直接 控件名.text就取得内容了,不知道MFC怎么用。
又没有教材,去网上找的方法,可以取任意控件的标题或者内容吧。。。。谢谢告诉我这个方法。
#7
hellovfp2011-03-08 11:46
回复 6楼 我是菜鸟哦
哦,哥哥是从VB转过来的呀。呵呵
偶提点小建议:不要在界面上浪费太多的时间,花点时间学习一下MFC框架剖析,理解一下API和MFC之间的关系。如果看不懂框架,学习一下C++知识先,和VB很不同哦,要不你越往后走越走不动。这是前辈们的经验总结,不是偶总结的,偶也是菜鸟。呵呵。

MFC也有类似于VB的方式,要不然也不叫Visual可视化编程了,在类上按Ctrl+W添加控件成员变量。
然后程序里就可以和VB一样,点一下就出相关的成员函数来了。


[ 本帖最后由 hellovfp 于 2011-3-8 11:47 编辑 ]
#8
我是菜鸟哦2011-03-08 11:50
恩,那我先研究框架
#9
absolutefree2011-03-08 12:30
不错的东东,顶一个
#10
tanglei12242012-03-14 22:09
多谢楼主哦,我也在编一个类似的,中间卡住了,过来发帖求助发现楼主的贴,先研究研究楼主的程序再说。。
1