norains的专栏

只专注于WINCE开发

用户操作
[即时聊天] [发私信] [加为好友]
norainsID:norains
142935次访问,排名598,好友0人,关注者53人。
代码其实是一种乐趣
norains的文章
原创 189 篇
翻译 0 篇
转载 10 篇
评论 274 篇
norains的公告
联系方式请看置顶文章
最近评论
dfdf:讨厌MFC!我觉得MFC就是太乱了!看似无用的代码不要不行,MD微软啥都给我们做完了,原理性的东西我们却永远没法搞懂了!
ironox:有个地方 我觉得很别扭,不知道怎么办好

比如说 CReg reg(HKEY_CURRENT_USER,TEXT("ControlPanel\Volume"));
ControlPanel\Volume 有可能不存在呀,这个该怎么处理哦?对象虽然创建了,出错了也没提示
szterry:呵呵,果然工作狂技术狂,同感,一样的感觉……不过我才刚毕业一年……搞IT就是玩……
jinlking:这个botton的实现只是在主窗口画了一块区域,对于事件的处理还要放在主窗口的窗口处理函数之中,在对应的消息处理上调用CheckTap来判断是否是此“按钮”,问一下,这种方法与把按钮封装在子窗口中有什么区别,二者使用那个更好?
KUODY:博主真是好人
文章分类
收藏
    相册
    动漫
    文章图片
    程序交流
    xumercury的BLOG
    狗友们的博客
    清蒸石斑鱼
    美女如刀锋
    茁茁的BLOG
    魅力老姐的窝
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 有趣的EVC4.0MIPSII编译器优化bug收藏

    新一篇: 从EVC4.0迁移到VS2005 | 旧一篇: VS2005和EVC4字符串宏在MIPSII架构的比较

    //========================================================================
    //TITLE:
    //    有趣的EVC4.0MIPSII编译器优化bug
    //AUTHOR:
    //    norains
    //DATE:
    //    Friday  21-December-2007
    //Environment:
    //    EVC4.0 + SDK-WINCE5.0-MIPSII
    //    VS2005 + SDK-WINCE5.0-MIPSII   
    //======================================================================== 

        在写代码时偶然发现的,大家都来乐一乐.
       
        首先必要的前提条件是,你是采用MIPSII来编译,
       
        有这么一段简单的代码,大家凭直觉看看应该显示的是什么: 
        int WINAPI WinMain(    HINSTANCE hInstance,
                        HINSTANCE hPrevInstance,
                        LPTSTR    lpCmdLine,
                        
    int       nCmdShow)
        {
            _tcslwr(TEXT(
    "ABC"));
        
            TCHAR 
    *pszInfo = new TCHAR[_tcslen(TEXT("ABC")) + 1];    
            _tcscpy(pszInfo,TEXT(
    "ABC"));    
            MessageBox(NULL,pszInfo,TEXT(
    ""),MB_OK);
            delete []pszInfo;
        
            
    return 0;
        }
        

       直觉告诉我们,显示的应该是"ABC". 恩,只是在evc4.0环境下,这个却就不全对了,如果你选择的是编译Release版本,并且优化选项为"Default"(也就是你在evc什么都没改时的默认设置),那么结果将是(如图):

        
        呵呵,变成小写了.如果你的优化选项为其它,比如Maximize Speed等,都不会出现此灵异事件.
       
        当然了,如果你选择的是别的CPU来进行编译,甚至是自带的标准模拟器,也不会查看到该灵异事件,因为在_tcslwr(TEXT("ABC")这个语句就已经出现内存溢出异常了(其实出现异常才是正确的)!而用MIPSII编译器进行编译,不但能够顺利通过,运行还正常,甚至选择MIPS默认优化还能有趣地出现灵异现象,实在不能不佩服微软在EVC4.0 MIPSII编译器的造诣啊 :-)

    发表于 @ 2007年12月21日 22:27:00|评论(loading...)|编辑

    新一篇: 从EVC4.0迁移到VS2005 | 旧一篇: VS2005和EVC4字符串宏在MIPSII架构的比较

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © norains