首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

这个程序是用来输出一个框框的,但是,小弟我照例子写了,可以编译后却是中文.纠结中

2013-10-13 
这个程序是用来输出一个框框的,但是,我照例子写了,可以编译后却是中文...纠结中#includestdio.h#define

这个程序是用来输出一个框框的,但是,我照例子写了,可以编译后却是中文...纠结中
#include<stdio.h>
#define LEFT_TOP 0xDA
#define RIGHT_TOP 0xBF
#define HORIZ 0xC4
#define VERT 0xB3
#define LEFT_BOT 0xC0
#define RIGHT_BOT 0xD9
int main ()
{
    char i,j;
    putchar(LEFT_TOP);
    for (i=0; i<10; i++)
    {
        putchar(HORIZ);
        putchar(RIGHT_TOP);
        putchar('\n');
    }
    for (i=0; i<4; i++)
    {
        putchar(VERT);
        for (j=0; j<0; j++)
        {
            putchar(' ');
            putchar(VERT);
            putchar('\n');
        }
    }
    putchar(LEFT_BOT);
    for (i=0; i<10; i++)
    {
        putchar(HORIZ);
        putchar(RIGHT_BOT);
        putchar('\n');
    }
    return 0;
}
我尝试了几种别的编码,结果都没太大差别,这。。。。。。求高手!!!
[解决办法]
不知这几个是什么字符?  为什么不直接用字符表示呢,用十六进制更难懂
另外请你自行查一下ascii表,这几个对应的是什么。

#define LEFT_TOP 0xDA
#define RIGHT_TOP 0xBF
#define HORIZ 0xC4
#define VERT 0xB3
#define LEFT_BOT 0xC0
#define RIGHT_BOT 0xD9

[解决办法]

#include<stdio.h>
#include<stdlib.h>
#define LEFT_TOP 0xDA
#define RIGHT_TOP 0xBF
#define HORIZ 0xC4
#define VERT 0xB3
#define LEFT_BOT 0xC0
#define RIGHT_BOT 0xD9
int main ()
{
    char i,j;
    system("chcp 437 >NUL");
    putchar(LEFT_TOP);
    for (i=0; i<10; i++)
    {
        putchar(HORIZ);
        putchar(RIGHT_TOP);
        putchar('\n');
    }
    for (i=0; i<4; i++)
    {
        putchar(VERT);
        for (j=0; j<0; j++)
        {
            putchar(' ');
            putchar(VERT);
            putchar('\n');
        }
    }
    putchar(LEFT_BOT);
    for (i=0; i<10; i++)
    {
        putchar(HORIZ);
        putchar(RIGHT_BOT);
        putchar('\n');
    }
    return 0;
}

热点排行