高分求助程序框架!!!!

ksycsdn 2004-08-11 08:42:55
初学者,求程序框架

在SCO unix中实现下列功能:

1.程序执行从键盘取得一字符串后
2.调用子程序取得外设输入(超时返回)
同时主程序处于读键盘状态,若读入为某一字符,则整个程序停止
3.子程序取得外设输入后,返回
4.主程序把子程序从外设读入的数据并加上其他数据通过socket发送取服务器(超时返回)
...全文
105 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ksycsdn 2004-10-27
  • 打赏
  • 举报
回复
step_by_step(脚印)
没有人回答,这100分只好给你了
step_by_step 2004-08-14
  • 打赏
  • 举报
回复
想要代码?到google搜一下肯定就有了
ksycsdn 2004-08-13
  • 打赏
  • 举报
回复
终端显示控制函数:
B_clscr();
setAttrib(P_HIGHLIGHT|P_UNDERLINE);
writeStrInMiddle(BEGIN_ROW,title);
setAttrib(P_NORMAL);

B_plot(1,BEGIN_ROW+2,author);
B_plot(79-strlen(developDate),BEGIN_ROW+2,developDate);

setAttrib(P_REVERSE);
B_wblank(1,BEGIN_ROW+3,80);
B_wblank(1,23,80);
setAttrib(P_NORMAL);
ksycsdn 2004-08-13
  • 打赏
  • 举报
回复
我怎样从终端读取单个字符?
==============================

我怎样从终端读取单个字符?我的程序总是要等着用户按回车。

终端通常在标准(canonical)模式,在此模式输入总是经编辑后以行读入。你可以
设置终端为非标准(non-canonical)模式,而在此模式下你可以设置在输入传递给
你的程序前读入多少字符。你也可以设定非标准模式的计时器为0,这个计时器
根据设定的时间间隔清空你的缓冲区。这样做使你可以使用‘getc()’函数立即
获得用户的按键输入。我们使用的‘tcgetattr()’函数和‘tcsetattr()’函数都
是在POSIX中定义用来操纵‘termios’结构的。

#include <stdlib.h>
#include <stdio.h>

#include <termios.h>
#include <string.h>

static struct termios stored_settings;

void set_keypress(void)
{
struct termios new_settings;

tcgetattr(0,&stored_settings);

new_settings = stored_settings;

/* Disable canonical mode, and set buffer size to 1 byte */
new_settings.c_lflag &= (~ICANON);
new_settings.c_cc[VTIME] = 0;
new_settings.c_cc[VMIN] = 1;

tcsetattr(0,TCSANOW,&new_settings);
return;
}

void reset_keypress(void)
{
tcsetattr(0,TCSANOW,&stored_settings);
return;
}

ksycsdn 2004-08-11
  • 打赏
  • 举报
回复
大致是此功能,只要求能出给控制框架,当然越详细越好,谢谢!

23,114

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧