﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-古道西风瘦马------尉迟方高声吟唱-最新评论</title><link>http://www.cnblogs.com/realfun/CommentsRSS.aspx</link><description>其实我更向往“小桥流水人家”----猫猫续道</description><language>zh-cn</language><pubDate>Fri, 14 Nov 2008 01:48:14 GMT</pubDate><lastBuildDate>Fri, 14 Nov 2008 01:48:14 GMT</lastBuildDate><generator>cnblogs</generator><item><title>Re:呵呵，发个面试题</title><link>http://www.cnblogs.com/realfun/archive/2010/06/25/136499.html#1856750</link><dc:creator>glq2000</dc:creator><author>glq2000</author><pubDate>Fri, 25 Jun 2010 03:06:26 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2010/06/25/136499.html#1856750</guid><description><![CDATA[自己以前的方法很笨，看了大家的分析后，重写了一遍：

 27 char alphabet[26] = {'Z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y'};
 29 char column[10] = {0};

 78 //将数字转为用字母表示的列(方法2,此法不错)
 79 void ExcelColumn2(unsigned n)
 80 {
 81     unsigned y=0, i=0;
 82     while(n&gt;0)
 83     {
 84         y = n%26;
 85         column[i++] = alphabet[y];
 86         n = n/26 - (!y?1:0);    //能整除26时,Z会出现,此时要借位
 87     }
 88 }

然后再将全局数组column逆置即可。<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">glq2000</a> 2010-06-25 11:06 <a href="http://www.cnblogs.com/realfun/archive/2010/06/25/136499.html#1856750#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Re:呵呵，发个面试题</title><link>http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856184</link><dc:creator>glq2000</dc:creator><author>glq2000</author><pubDate>Thu, 24 Jun 2010 13:31:01 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856184</guid><description><![CDATA[刚才那个格式不好， 我重新发一遍

#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;cstring&gt;
#include &lt;vector&gt;
#include &lt;math.h&gt;
using namespace std;

vector&lt;char&gt; v;

void ExcelColumn(unsigned n)
{
        unsigned y = 0;                                         //余数
        unsigned t = 0;
        char c;                                                         //在该位产生的字符
        while(n)
        {
                y = n%( (unsigned)pow(26, v.size()+1) );
                if(!y)  // y is 0
                {
                        c = 'Z';
                        n -= 26*((unsigned)pow(26, v.size()));
                }
                else    // y is not 0
                {
                        t = y/( (unsigned)pow(26, v.size()) );//原来是 y%((unsigned)pow(26, v.size())), 现将y后改为/
                        c = 'A'+t-1;
                        n -= t*((unsigned)pow(26, v.size()));
                }
                v.push_back(c);
        }
}


int main()
{
        unsigned n = 70308;             // CYZD
        ExcelColumn(n);

        //逆置该vector
        vector&lt;char&gt;::iterator it, it2;
        char tmp;
        for(it=v.begin(),it2=v.end()-1; it&lt;it2;) //注意:退出条件是it&lt;it2而不是it!=it2,否则v.size()为偶数时,it和it2正好错开,导致循环过头最终导致段错!!!
        {
                tmp = *it;
                *it++ = *it2;
                *it2-- = tmp;
        }

        //输出结果
        for(it=v.begin(); it!=v.end(); ++it )
                cout&lt;&lt;*it;

        return 0;
}
<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">glq2000</a> 2010-06-24 21:31 <a href="http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856184#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Re:呵呵，发个面试题</title><link>http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856182</link><dc:creator>glq2000</dc:creator><author>glq2000</author><pubDate>Thu, 24 Jun 2010 13:29:53 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856182</guid><description><![CDATA[关于Excel的我的解法：

C++语言: 面试题_转换Excel中的列 
01 /*
02         DATE: 2010.6.24
03 
04         URL : http://www.cnblogs.com/realfun/archive/2005/04/13/136499.html
05 
06         题目：
07         (这个题目不像它表面上看起来那么简单，请仔细想想答案)
08         用过excel的都知道excel的列编号是这样的：
09         a b c .... z aa ab ac .... az ba bb bc .... yz za zb zc .... zz aaa aab aac ....
10         分别代表以下编号：
11         1 2 3 .... 26 27 28 29 .... 52 53 54 55 .... 676 677 678 679 .... 702 703 704 705 ....
12 
13         请写个函数，完成从一个正整数到这种字符串之间的转换。
14         ===============================================================
15         这个题目既不是我出的，也不是我遇到的，是我的同学面试的时候遇到的，呵呵，他回来后跟我说，好险，差一点陷进去，陷进去就挂了。
16 */
17 
18 #include &lt;iostream&gt;
19 #include &lt;string&gt;
20 #include &lt;cstring&gt;
21 #include &lt;vector&gt;
22 #include &lt;math.h&gt;
23 using namespace std;
24 
25 vector&lt;char&gt; v;
26 
27 void ExcelColumn(unsigned n)
28 {
29         unsigned y = 0;                                         //余数
30         unsigned t = 0;
31         char c;                                                         //在该位产生的字符
32         while(n)
33         {
34                 y = n%( (unsigned)pow(26, v.size()+1) );
35                 if(!y)  // y is 0
36                 {
37                         c = 'Z';
38                         n -= 26*((unsigned)pow(26, v.size()));
39                 }
40                 else    // y is not 0
41                 {
42                         t = y/( (unsigned)pow(26, v.size()) );//原来是y%((unsigned)pow(26, v.size())), 现将y后的%改为/
43                         c = 'A'+t-1;
44                         n -= t*((unsigned)pow(26, v.size()));
45                 }
46                 v.push_back(c);
47         }
48 }
49 
50 
51 int main()
52 {
53         unsigned n = 70308;                       //CYZD
54         ExcelColumn(n);
55 
56         //逆置该vector
57         vector&lt;char&gt;::iterator it, it2;
58         char tmp;
59         for(it=v.begin(),it2=v.end()-1; it&lt;it2;) //注意:是it&lt;it2而不是it!=it2,否则v.size()为偶数时,        
60         {                                        //it和it2正好错开,导致循环过头最终导致段错!!!
61                 tmp = *it;                       
62                 *it++ = *it2;
63                 *it2-- = tmp;
64         }
65 
66         //输出结果
67         for(it=v.begin(); it!=v.end(); ++it )
68                 cout&lt;&lt;*it;
69         
70         cout&lt;&lt;endl;
71         return 0;
72 }




<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">glq2000</a> 2010-06-24 21:29 <a href="http://www.cnblogs.com/realfun/archive/2010/06/24/136499.html#1856182#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Re:如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/12/20/888446.html#1728928</link><dc:creator>lhl</dc:creator><author>lhl</author><pubDate>Sun, 20 Dec 2009 08:00:37 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/12/20/888446.html#1728928</guid><description><![CDATA[本人新开发了一个专门针对智能触屏手机（只有屏幕键盘）而设计的全键盘每字两码字、词、句混合输入的智能输入法。

实现了输入过程中自动分词、全自动调整词频、全自动智能学习新词等智能处理，使得用户可以在手机上实现每字两码整句快速输入，达到行云流水般的盲打境界，输入速度可以与台式计算机相媲美。

据测算，使用本手机输入法，一般人可以轻松达到每分钟５０－６０字的速度。

目前遇到了几个问题请教博主有没有好方法：
１、在某些软件下不能实现直接点选候选窗上屏。因为编码窗、候选窗是另外一个窗口（不是sip窗口）。程序是这样处理的，点选候选窗（或编码窗）后，自动将候选窗中隐藏，使应用程序重新获取焦点。输出汉字后，重新显示候选窗（编码窗）。在大多数软件是可以正确输入。但是目前在ucweb的搜索框中以及outlook联系人的姓名窗口中不能实现输入。
２、sip面板的宽度目前我已经找到方法设置，在横屏时可以进行自动拉伸。（高度还没有试，我想应该可以实现）。不过拉伸后，面板不美观。我想做一个用户可以自定义面板的功能（面板图片可以由用户自己改变），应该如何实现比较好？
３、另外由于是自己设置面板的位置和大小，需要准确获得wm下面的菜单栏高度，如何获取？（目前是固定是25，这高度可能在不同机器上会变化）.


<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">lhl</a> 2009-12-20 16:00 <a href="http://www.cnblogs.com/realfun/archive/2009/12/20/888446.html#1728928#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Re:介绍几种苦瓜的吃法，给大家降降火</title><link>http://www.cnblogs.com/realfun/archive/2009/07/08/184794.html#1579459</link><dc:creator>筱鱼儿</dc:creator><author>筱鱼儿</author><pubDate>Wed, 08 Jul 2009 10:31:17 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/07/08/184794.html#1579459</guid><description><![CDATA[我试了，真的很好。快来试试。<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">筱鱼儿</a> 2009-07-08 18:31 <a href="http://www.cnblogs.com/realfun/archive/2009/07/08/184794.html#1579459#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 双通输入法源码公布 by 尉迟方</title><link>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491792</link><dc:creator>半瓶墨水</dc:creator><author>半瓶墨水</author><pubDate>Tue, 31 Mar 2009 01:47:48 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491792</guid><description><![CDATA[@leo.wan 我也看不懂，我是自己重写的<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">半瓶墨水</a> 2009-03-31 09:47 <a href="http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491792#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 双通输入法源码公布 by 尉迟方</title><link>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491694</link><dc:creator>leo.wan</dc:creator><author>leo.wan</author><pubDate>Tue, 31 Mar 2009 00:52:27 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491694</guid><description><![CDATA[--引用--------------------------------------------------<br/>bjh: 尉迟方兄，我现在正在学习自由拼音输入法编程，下面的问题一直看不明白，<br/>&lt;br&gt;请指教，非常感谢！<br/>&lt;br&gt;如下两个结构中的dwAttrib和abKey指的是什么意思，如何计算的？<br/>&lt;br&gt;typedef struct _HZPH {<br/>&lt;br&gt;	TCHAR szHZ[2*(MAX_PHRASE_LEN+1)];<br/>&lt;br&gt;	DWORD dwAttrib;<br/>&lt;br&gt;	struct _HZPH __based(lpMapFileBase) *lpNext;<br/>&lt;br&gt;} HZPH, FAR *LPHZPH;<br/>&lt;br&gt;typedef struct _KEYPH {<br/>&lt;br&gt;	SHORT wLen;<br/>&lt;br&gt;	BYTE abKey[MAX_PHRASE_LEN+1];<br/>&lt;br&gt;	HZPH __based(lpMapFileBase) *lpHZPH;<br/>&lt;br&gt;	struct _KEYPH __based(lpMapFileBase) *lpNext;<br/>&lt;br&gt;} KEYPH, FAR *LPKEYPH;<br/>--------------------------------------------------------<br/>如果看不懂可以找我  我看这个源码有一阵子了 自己改了些 我虽然计算机专业的 但毕业后几年 都没做过编程工作 某天突发奇想想些个输入法可以粤语发音 粤音拼音互换的，最后改到他的词组查询 但又没有好的算法 ，对输入法的知识也不是太了解 还是比较头痛的 ，不过我只是写给自己用 也不太在乎效率<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">leo.wan</a> 2009-03-31 08:52 <a href="http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491694#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 双通输入法源码公布 by 尉迟方</title><link>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491690</link><dc:creator>leo.wan</dc:creator><author>leo.wan</author><pubDate>Tue, 31 Mar 2009 00:46:54 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491690</guid><description><![CDATA[其实看看tool目录下的源码就很清楚这些结构是用来干什么的了<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">leo.wan</a> 2009-03-31 08:46 <a href="http://www.cnblogs.com/realfun/archive/2009/03/31/181302.html#1491690#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480588</link><dc:creator>树</dc:creator><author>树</author><pubDate>Wed, 18 Mar 2009 14:03:09 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480588</guid><description><![CDATA[很有意思，dvoraksip安装在手机上，调不出来，不是注册表的问题。<br/>有一个办法，先安装一个touchpal输入法，再安装dvoraksip，重起后把touchpal删除，dvoraksip就可以用了。<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">树</a> 2009-03-18 22:03 <a href="http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480588#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480577</link><dc:creator>树</dc:creator><author>树</author><pubDate>Wed, 18 Mar 2009 13:45:51 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480577</guid><description><![CDATA[输入法的窗口大小如何改变？ <br/>我用的是微软的例子dvoraksip，它默认的是80*240，我想改为100*240，试了下面的定义，好像不起作用。<br/>#define BITMAP_HEIGHT       100<br/>#define BITMAP_WIDTH        240<br/>不知在哪里定义？<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">树</a> 2009-03-18 21:45 <a href="http://www.cnblogs.com/realfun/archive/2009/03/18/888446.html#1480577#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/03/17/888446.html#1478708</link><dc:creator>jason2009</dc:creator><author>jason2009</author><pubDate>Tue, 17 Mar 2009 01:47:44 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/17/888446.html#1478708</guid><description><![CDATA[--引用--------------------------------------------------<br/>simon金: 断点肯定是没有问题的，我在DllMain里和Select中都设置了。 SIP也被加载了，点击了我的SIP输入法之后，能够弹出我的SIP输入法。<br/>  SIP是被device.exe加载。IMM被每个应用独立加载（所以好调试)。<br/>你试过例子代码没?<br/>C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Samples\CPP\ATL\Dvoraksip<br/>这个应用也不能调试。<br/><br/>下面是我的注册表设置：<br/>HKEY_CURRENT_USER\CLSID\ {4a4a96d7-ae04-11d0-a4f8-00aa00a749b9} <br/>CESip<br/> <br/>HKEY_CURRENT_USER\CLSID\ {4a4a96d7-ae04-11d0-a4f8-00aa00a749b9}\ InprocServer32 <br/> \Windows\CeSip.dll<br/> <br/>HKEY_CURRENT_USER\CLSID\ {4a4a96d7-ae04-11d0-a4f8-00aa00a749b9}\ IsSIPInputMethod <br/> 1<br/> <br/><br/> 请具体说明下你是怎么能调试的，我现在只能通过DEBUGMSG，然后通过串口打印出信息。<br/><br/>谢谢！！<br/>--------------------------------------------------------<br/><br/>遇到和楼上一样的情况，不知道能否请半瓶墨水兄详细指导一下，不胜感激！<br/><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">jason2009</a> 2009-03-17 09:47 <a href="http://www.cnblogs.com/realfun/archive/2009/03/17/888446.html#1478708#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473296</link><dc:creator>半瓶墨水</dc:creator><author>半瓶墨水</author><pubDate>Tue, 10 Mar 2009 11:35:38 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473296</guid><description><![CDATA[输入法自己是有callback的，自己去查<br/>如果是说SIP，我就不知道了<br/><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">半瓶墨水</a> 2009-03-10 19:35 <a href="http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473296#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 如何编写PocketPC上的输入法</title><link>http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473278</link><dc:creator>jason2009</dc:creator><author>jason2009</author><pubDate>Tue, 10 Mar 2009 11:01:25 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473278</guid><description><![CDATA[你好，又来请教了，^_^。<br/><br/>请问下，如果是一个带有全键盘的PPC，我在实现输入法的时候，如何获取到键盘消息呢？<br/><br/>是向当前应用注册钩子，截取WH_KEYBOARD_LL钩子消息码？<br/><br/>如果有类似的代码资料，请告知下，感谢。<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">jason2009</a> 2009-03-10 19:01 <a href="http://www.cnblogs.com/realfun/archive/2009/03/10/888446.html#1473278#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: Windows Mobile 5.0 PocketPC 键盘查看工具 Key Viewer 1.0发布</title><link>http://www.cnblogs.com/realfun/archive/2009/02/26/348169.html#1461615</link><dc:creator>jason2009</dc:creator><author>jason2009</author><pubDate>Thu, 26 Feb 2009 01:10:06 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/02/26/348169.html#1461615</guid><description><![CDATA[请教个问题，如果我在带全键盘的PPC上开发SIP，该如何获取键盘消息？和smartphone一样的吗？谢谢<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">jason2009</a> 2009-02-26 09:10 <a href="http://www.cnblogs.com/realfun/archive/2009/02/26/348169.html#1461615#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 输入法如何单步跟踪调试？呵呵，输入法也是一个dll</title><link>http://www.cnblogs.com/realfun/archive/2009/02/25/225153.html#1460627</link><dc:creator>jason2009</dc:creator><author>jason2009</author><pubDate>Wed, 25 Feb 2009 01:22:06 GMT</pubDate><guid>http://www.cnblogs.com/realfun/archive/2009/02/25/225153.html#1460627</guid><description><![CDATA[想请问个问题，现在想做一个可更换皮肤的SIP，想把所有的图片资源都放在一个DLL里面，由SIP所在的DLL来调用资源DLL，这样以后更换皮肤就可通过更换资源DLL搞定。不知道wince上的dll调用与pc上的dll互相调用是否一样呢？可否传授下经验，感谢<br><br><div align=right><a style="text-decoration:none;" href="http://www.cnblogs.com/realfun/" target="_blank">jason2009</a> 2009-02-25 09:22 <a href="http://www.cnblogs.com/realfun/archive/2009/02/25/225153.html#1460627#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>
