100分求助tsr 输入输出问题!

houzy 2003-08-14 12:42:21
问题:
一个tsr程序,激活后生成文本方式菜单,奇怪的是,在里面用cprinf("hello!"); 没问题,但是如果是要输出变量的话,如 cprintf("%c",ch),ch是一个已经定义好的 char ch; 根本不能正常输出!显示仪个空格或者几个乱码。试过putch也不行 。


某人回答:
在驻留程序里调用这些函数不太好,因为cprintf在底层也是调用了显示的中断,很容易会出现系统重入的问题,你这个问题可能与这个有关,如果你真的需要显示,你要改写显示的中断,比如你用了cprintf()你就要修改她所调用的显示中断,添加一个全局变量看看是不是在运行这个显示中断。其他的方法就是你自己改写一个显示的中断,添加一个显示的函数来显示字符。

现在问题:
一般在tsr里的输出用直接写屏,是吧?这个办法不会影响中断。
但是我需要做文本的编辑 ,所以不能用直接写屏。有其他更好的输出的办法吗?请指教!或者说明如何改写显示中断!谢谢。

...全文
40 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
houzy 2003-08-20
  • 打赏
  • 举报
回复
谢谢大家,我已经解决,请大家去看看此贴:

http://expert.csdn.net/Expert/topic/2170/2170391.xml?temp=.5642359

总之,搞老东西很麻烦。哎!
yzb1000 2003-08-17
  • 打赏
  • 举报
回复
我的书叫《c语言的窗口式图形界面设计》讲的很详细
写屏时寄存器的保护等等
刘路放著,西安交通大学出版社。
cc188 2003-08-17
  • 打赏
  • 举报
回复
你用cout试试看吧,用cprintf有时会系统重入的。
cc188 2003-08-17
  • 打赏
  • 举报
回复
调用中断速度速度太慢,直接写屏吧,tsr也可以直接写屏的,不管是图形模式还是文本都可以的,只要保护得当。具体方法看参考书吧。
yzb1000 2003-08-17
  • 打赏
  • 举报
回复

tsr的限制很多
为了防止系统重入,很多函数都不能用
文本编辑一样可以写屏的啊,我手上就有一本书,讲的很详细的,可惜一言半语说不清
你用c的图形初试化语句,它是调用中断实现的吧
msftaovc 2003-08-14
  • 打赏
  • 举报
回复
up
houzy 2003-08-14
  • 打赏
  • 举报
回复
另外一个问题,tsr模式下,如果画图,提示不能初始化,然后报错。这也是因为tsr的原因吗?如何解决?

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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