linux模拟windows的kbhit

linux模拟windows的kbhit

 

Windows有个很不错的函数kbhit,可以检测是否有任何键按下了。例如我们可以检测键按下,来退出一个无限循环。还可以得到用户按下的这个键。

但是linux默认是没有这个函数的,我们可以使用下面自定义的函数来实现这个功能。

实现的原理就是将阻塞模式的stdin改为非阻塞模式,然后尝试读取,读的时候有东西则按下了键,否则没有。

 

int kbh更多... “linux模拟windows的kbhit”

linux 用c程序写整个控制台

linux 用c程序写整个控制台

 

我们知道使用

printf("test \n");

这样只能输出一行。而我们看到过很多程序,启动后程序占满整个控制台窗口,这是怎么做到的呢?

原理就是先清掉整个整个屏幕

system( "clear");

让后画满整个屏幕

这个也是通过

printf()

这个函数实现。

然后

画完一屏之后,

再次调用 system("clear&qu… 更多... “linux 用c程序写整个控制台”

利用sftp来上传你的文件

在开始介绍如何使用sftp之前,先简单说明一下sftp和ftps不是一回事情,很多人把这2个协议搞混了,有人还把Filezilla配置ftps来说明怎么利用filezilla如何配置sftp。其实filezilla服务端是不支持sftp协议的,客户端支持。

我们ftp不是一个安全的协议,其发送的内容很都是以明文的方式发送,包括用户名,密码还有文件内容。因此后来又引入了 secure ftp,就是安全的f… 更多... “利用sftp来上传你的文件”

用c++写扩平台程序

口号:一次编码,到处编译! :-) 

     一次编码,在 vc7.1 , vi 甚至ulteredit 上完成编码。

     到处编译,将写好的代码 copy  到其它操作系统,也能够编译运行,而不用去修改哪怕一行代码。

     听起来是不是象 SUN 的口气,呵呵。 其实 c++ 的移植性个人认为是超过 java 的,java之所以名声在外的原因 B.S 说得很明了:厂商利益。

 

     呵,废话不多说,进入主题。

 

     要建立一个c++跨平台的应用,亦难也易。

     难在什么更多... “用c++写扩平台程序”

我来理解extern “C”

编程快5年了, 今天才算对extern “C” 有个较为清晰的认识. 本人对extern “C”的认识可以分为三个阶段:

 

1. 从别人的代码里面看到有这个东西, 自己不认识, 就上网查查, 大概明了它是什么意思.

2. 看到别人的代码里面包含用c写的代码就用extern “C”, 那么自己依葫芦画瓢用c代码的时候也加这个东西. 自己感觉对这个东西很熟悉了… 更多... “我来理解extern “C””

查看某个进程和线程的cpu使用率

查看某个进程和线程的cpu使用率

 

在实际开发中发现有时自己开发的程序使用率非常的高, 以致于影响到机器上其他程序的正常运行. 这时我们该怎么办呢?

 

首先应该想到的, 也是最佳解决方法是找到进程中使用cpu最多的那个线程( 怎样找到cpu使用最多的线程, 暂不在这里讨论 ), 然后进行优化它. 当然还有另外一种就是限制程序的cpu使用率的峰值. 当进程的使用率达到限定的峰值时, 就让他睡眠 sleep… 更多... “查看某个进程和线程的cpu使用率”

获取windows系统锁定和解锁计算机事件

获取windows系统锁定和解锁计算机事件   

 

开发中有时碰到要去获取计算机的锁定和解锁事件, 然后在决定在锁定前程序要作些什么, 解锁后程序要作些什么. 如锁定解锁后3D的设备组件会Lost也就是变为无效,需要重新获取, 否则3D不会得到刷新.

 

那么我们要怎么做呢?

 

可以用RegisterSessionNotification 和UnRegisterSes… 更多... “获取windows系统锁定和解锁计算机事件”