初学:句柄(handle)的含义?高手请示例解说!多谢! 句柄(handle)就是某个对象的标识,有了它你就可以对handle所代表的对象(比如窗体,按钮等)进行操作了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个内存对象,但不想让你知道其内部结构,就定义一个handle来指示它的位置,通常是指针或者表索引。例:static struct _file_struct file_table[20];HANDLE open(char *path){ int handle; for ( handle = 0; handle < 20; handle++ ) { if ( file_table[handle] == - 1) break; } if ( handle >= 20 ) return (HANDLE)-1; // 系统资源耗尽 // ... 打开文件内部操作 return (HANDLE)handle;} 句柄类似与指针,就是对象的标识,但句柄与一般的指针有着一定的区别,句柄不仅仅我们用户需要用(操作核心对象和GUI对象),而且OS也需要用,OS本身就得利用这些句柄来完成一定的功能.所以句柄不是编程语言的产物而是OS的产物,句柄充当是OS和用户之间桥梁的角色. windows系统对每一个进程有一个句柄表,这个表登记者分配给这个进程的内核资源(比如用CreateFile打开的文件)的一个内存快的指针, Runtime Error 错误 弱问:CImageList能直接赋值吗? 怎么用regsetvalueex改注册表里的reg dword值? COM对象创建问题 传送文件夹.. CEdit怎样实现多行显示啊? ? 紧急请教高手:我和领导在一个局域网,服务器容许他上网,但是我上不了,我应该怎么办才可以上呢?? 续 怎么让主线程阻塞,保证事件做完后继续主线程 一个程序可不可能既属于DOS程序又属于Windows程序? 如何用VC++在视频上添加数据点(XY轴二维数据)(类似添加字幕) 简单的线程问题,高手请进! 有哪位高手知道大型超市的电脑系统构成???50分求助
static struct _file_struct file_table[20];HANDLE open(char *path)
{
int handle;
for ( handle = 0; handle < 20; handle++ )
{
if ( file_table[handle] == - 1)
break;
}
if ( handle >= 20 )
return (HANDLE)-1; // 系统资源耗尽 // ... 打开文件内部操作 return (HANDLE)handle;
}