网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> C语言编程 >> 文章正文
  教你如何放大显示ASCII字符(文本模式)            【字体:
教你如何放大显示ASCII字符(文本模式)
作者:佚名    文章来源:不详    点击数:    更新时间:2007-7-2    

原帖及讨论:http://bbs.bc-cn.net/dispbbs.asp?boardid=5&id=129298

/* 以'#'符号来显示放大显示ASCII字符(以前的老资料,适用于DOS环境)
   说明:0xF000FA6E这个地址是每个(ASCII)字符显示点阵的首地址,
   每个字符大小为8*8,每个字符点阵占连续的8个字节,每一字节表示
   一行,从上而下,从左而右.

   本人 QQ:527274766
   C语言群:31545052 和 31544991

   参考以下代码:
*/

#include<stdio.h>
#include<conio.h>

void ShowBigChar(int x,int y,char ch)
{   /* 单个字符放大 */
    int  i,j;
    char far *position;
    unsigned char test;

    position=(char far *)0xF000FA6EL+ch*8;/* 获取ch对应的字符点阵的首地址*/
    for(i=0;i<8;++i)        /* 8行 */
    {  
        gotoxy(x*8+1,y+i);  /* 8*8点阵,所以每个字符占8列 */
        test = 0x80;        /* 对应2进制为1000,0000 */
        for(j=0;j<8;++j)    /* 8列 */
        {  
            if(*position & test) putchar('#');/* 按位与,若不为0,即显示# */
            else                 putchar(' ');/* 否则不显示 */
            test>>=1;       /* 左移一位,依次变成0100,0000 0010,0000 0001,0000 ... */
        }
        ++position;         /* 移到下一字节,既点阵的第2行*/
    }
}

void ShowBigString(char str[])
{   /* 字符串放大 */
    int i;

    if(strlen(str)>30)
    {   /* 因为屏幕大小为80*25,所以每行最多显示
           80/8=10个字符,最多显示25/8=3行 */
        printf("Too much word! ( <30 )");
        return;
    }
    for(i=0;str[i]!='\0';++i) /* 逐个字符显示 */
        ShowBigChar(i%10,i/10*8+1,str[i]); /* i/10*8换行*/
}

int main()
{
    char s[] = "xql0501   QQ:       527274766";/* 要放大显示的字符串 */

    clrscr();         /* 清屏 */
    ShowBigString(s); /* 放大显示 */
    getch();
    return 0;
}

 

站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     C语言递归
     指向指针的指针
     结构体类型变量的定义和…
     C语言文件系统应用举例
     C语言入门之运算符和表达…
     C语言教程第一章: C语言…
     C语言基础教程(一)基础…
     C语言基础教程(四)指针…
     链表的c语言实现(一)
  • 初学者,你应当如何学习C++以…

  • 如何在C#中使用Win32和其他库…

  • 如何实现那种流行的平面按钮

  • 如何用VB实现Modbus串行通讯

  • 手把手教你做一个简单的VB数…

  • Delphi如何从非主窗体启动

  • 如何取得LPT端口打印机支持的…

  • 如何使用回车键模仿Tab键

  • DELPHI 中如何使用动态数组

  • 如何使用JSP開發WebMail系統

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David