关于GetActiveWindow和GetForegroundWindow,memset()函数

关于GetActiveWindow和GetForegroundWindow:

 

最前的窗口不一定是激活的...比如说qq的主窗口,只要不靠到屏幕边上,就是总在最前的,你拖放一个ie过去是挡不住的,这时候,你用 GetActiveWindow得到的是有焦点的ie窗口,用GetForegroundWindow得到的是qq的窗口。

 

关于memset()函数:

 

void *memset(void *s, char ch, unsigned n);
“百科''介绍:将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值,
块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作
用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为 ‘ ’ ‘/0’

:char a[100];memset(a, '/0', sizeof(a));

      memset 可以方便的清空一个结构类型的变量或数组。

如:

struct sample_struct
{
 char   csName[16];
 int    iSeq;
 int    iType;
};

对于变量
struct sample_strcut  stTest;

一般情况下,清空 stTest 的方法:

stTest.csName[0]='/0';
stTest.iSeq=0;
stTest.iType=0;

memset 就非常方便:
memset(&stTest,0,sizeof(struct sample_struct));

如果是数组:

  struct sample_struct   TEST[10];

memset(TEST,0,sizeof(struct sample_struct)*10);

 

 

你刚分配的内存空间,或者是被你用过的内存空间里面的数据是不固定的

为了避免这些无用的数据给自己的程序带来影响,可以用memset把这些内存里面的数据置成某个数值

一般情况下是置0。当然,如果你的程序不会受这些无用数据影响,就不用做这个工作了
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值