11
13
2010
17

获取中文汉字拼音首字母

/*ConvertToPY v0.1 author:star date:2010-02-25 */
#include <iostream>  
#include <string>  
  
using namespace std;  
static char convert(wchar_t n); 
static bool In(wchar_t start, wchar_t end, wchar_t code); 
  
int main(int argc, char* argv[])  
{ 
    string sChinese = "取得拼音的首字母"; //   输入的字符串 
    char chr[3];  
    wchar_t wchr = 0;  
    char* buff = new char[sChinese.length()/2];  
   
    memset(buff, 0, sizeof(char)*sChinese.length()/2+1);  
    for (int i = 0, j = 0; i < (sChinese.length()/2); ++i)  
    {    
        memset(chr, 0, sizeof(chr));  
        chr[0]  = sChinese[j++];  
        chr[1]  = sChinese[j++];  
        chr[2]  = '\0';  
        wchr    = 0;  
        wchr    = (chr[0] & 0xff) << (1<<3);  
        wchr   |= (chr[1] & 0xff);  
        buff[i] = convert(wchr);  
    }  
    cout << "结果 :[" << buff << "]" << endl;  
    return 0;  
}  
char convert(wchar_t n)  
{   
    if (In(0xB0A1,0xB0C4,n)) return 'A';  
    if (In(0XB0C5,0XB2C0,n)) return 'B';  
    if (In(0xB2C1,0xB4ED,n)) return 'C';  
    if (In(0xB4EE,0xB6E9,n)) return 'D';  
    if (In(0xB6EA,0xB7A1,n)) return 'E';  
    if (In(0xB7A2,0xB8c0,n)) return 'F';  
    if (In(0xB8C1,0xB9FD,n)) return 'G';  
    if (In(0xB9FE,0xBBF6,n)) return 'H';  
    if (In(0xBBF7,0xBFA5,n)) return 'J';  
    if (In(0xBFA6,0xC0AB,n)) return 'K';  
    if (In(0xC0AC,0xC2E7,n)) return 'L';  
    if (In(0xC2E8,0xC4C2,n)) return 'M';  
    if (In(0xC4C3,0xC5B5,n)) return 'N';  
    if (In(0xC5B6,0xC5BD,n)) return 'O';  
    if (In(0xC5BE,0xC6D9,n)) return 'P';  
    if (In(0xC6DA,0xC8BA,n)) return 'Q';  
    if (In(0xC8BB,0xC8F5,n)) return 'R';  
    if (In(0xC8F6,0xCBF0,n)) return 'S';  
    if (In(0xCBFA,0xCDD9,n)) return 'T';  
    if (In(0xCDDA,0xCEF3,n)) return 'W';  
    if (In(0xCEF4,0xD188,n)) return 'X';  
    if (In(0xD1B9,0xD4D0,n)) return 'Y';  
    if (In(0xD4D1,0xD7F9,n)) return 'Z';  
    return 0;  
}  
inline bool In(wchar_t start, wchar_t end, wchar_t code)  
{   
    if (code >= start && code <= end)  
        return true;  
    return false;  
}

 转载自:http://star.is-programmer.com/posts/19694.html

Category: C/C++ | Tags:
11
13
2010
3

C/C++ IDE

所谓欲善其事,必先利其器。

一个好的剑客,必然还要有一把好剑才行;

一个好的程序员,也必然要有一个得心应手的IDE才行。

学校的教材中貌似还在使用Turbo C,个人感觉它真的应该下岗休息休息了,啥子功能都没有。

也不利于培养好的编程习惯,貌似用TC的同学写代码都不知道缩进。

现根据各位大侠的文章总结一些,记下来有备无患:

1. Code::blocks   (Windows)

http://www.codeblocks.org/

因为Code::Blocks不包含Windows编程头文件(实际是因为没有Windows SDK),无法编写Windows操作系统相关的界面应用程序或者服务类程序。

2. Microsoft Visual C++ 2010 (Windows)

此软件功能极为强大,兄弟就不多说了,不过是收费的,学习的话使用Express版本,去微软官网下就是了。

3. CodePad

http://codepad.org/

这不是一个软件,而是个网站,提供在线编辑运行代码,适合学习和临时调试代码用。

4. Dev C++ (Windows)

http://sourceforge.net/projects/dev-cpp/

不错的软件,我们学校ACM竞赛的使用就指定用这个,对标准支持良好,又可以开发win32程序。

Category: C/C++ | Tags:

Host by is-Programmer.com | Power by Chito 1.3.3 beta | Theme: Aeros 2.0 by TheBuckmaker.com