博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

蓝色ubuntu空间

   stephenliu.cublog.cn
关于作者  
姓名:stephen(潜艇)
个性介绍:
微软的收入是怎么来的。首先,Windows 98系列操作系统,一个就是 100多美元,每次升级又是几乎同样的价钱。Windows NT 还要贵几倍,而且有用户数目限制,5个用户的,10个用户的…… 以后如果要增加用户数目还要按比例付钱。

花了如此多钱买来的操作系统就能用了吗?它竟然连压缩程序都没有提供!你装上Windows 之后一般第一件事就是去下载一个 WinZip 吧,“只要 29 美元”。Windows会中病毒啊,马上花 70 美元买一个 Norton AntiVirus 吧。还有黑客呢?再买一个Norton Internet Security 好了,100 美元。系统需要优化,磁盘需要整理,买一个Norton System Works 是你最佳的解决方案,100美元。

可是你现在还是不能干正事啊!你想要一个 Word, PowerPoint?那就买一套 Office XP 吧,一起买便宜些,$459.90。

那些程序不会用啊!那些菜单怎么设置,到底有什么功能啊?看“帮助”也学不会。买本书看看吧,我推荐“Special Edition Using Microsoft Office XP”,不贵,$27.99。这本书里面大部分是屏幕抓图,还是买一本旧的比较划算,$17.85。

你如果只是当个秘书,上面的差不多还凑合了。可是你有更高的追求,你想成为 Windows程序员。首先买一个 Visual Studio.NET 吧,要不然怎么编译程序。$494.95。

为了紧跟微软动向,世界潮流,不能不注册个 MSDN 什么的吧?这个贵一点,不过物有所值啊,$2,799。

嗯,你现在已经是上层阶级,白领人士了。你现在可以像这样“自由”的,“安全”的生活了。

我的分类  




linux下c语言实现getch()功能(转)

以下是网络资料,还没经过测试

 

#include <stdio.h>

#include <termio.h>

 

static struct termio ttysave;

void restore(void);

char getch(void);

int main(void)

{.....}

 

char getch(void)

{

       static char ch;

       static int total,flag=1;

       struct termio tty;

       if (flag)

       {

              flag=0;

              if(ioctl(0,TCGETA,&tty)==-1)

              {

                     perror("ioctl");

                     exit(1);

              }

              ttysave=tty;

              tty.c_lflag &=~(ICANON|ECHO|ISIG);

              tty.c_cc[VMIN]=1;

              tty.c_cc[VTIME]=0;

              if(ioctl(0,TCSETAF,&tty)==-1)

              {

                     ..

                     perror("ioctl");

                     exit(2);

              }

       }

       switch(total=read(0,&ch,1))

       {

              case -1:

              ..;

              exit(3);

              case 0:

              fputs("EOF error!",stderr);

              exit(4);

              default:

              ;

       }

       ...

       return(ch);

}

 

 

 

第二种:

  可以检测 PageUP PageDown以及Arrows等按键,F1, F2等功能键,
会被解释成输入一个字符序列。功能的实现是通过ioctl调整终端的属性。

 

#include <stdio.h>
#include <sys/ioctl.h>
#include <termios.h>

int getch( );

int main( )
{
    char ch;
    while(1){
        ch = getch( );
        printf("You Pressed %c\n", ch);
        if(ch == 'E')
             break;
    }
}

int getch()
{
    char ch;
    struct termios save, ne;
    ioctl(0, TCGETS, &save);
    ioctl(0, TCGETS, &ne);
    ne.c_lflag &= ~(ECHO | ICANON);
    ioctl(0, TCSETS, &ne);
    read(0, &ch, 1);
    ioctl(0, TCSETS, &save);
    return ch;
}

 发表于: 2007-06-26,修改于: 2007-11-22 17:54 已浏览1637次,有评论0条 推荐 投诉

  网友评论

  发表评论



Copyright © 2001-2006 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们
页面生成时间:7.41126

京ICP证041476号