c/c++基础
小耸
一枚在二线城市的轻文艺程序猿
展开
-
函数指针与指针函数
【函数指针】 在程序运行中,函数代码是程序的算法指令部分,它们和数组一样也占用存储空间,都有相应的地址。可以使用指针变量指向数组的首地址,也可以使用指针变量指向函数代码的首地址,指向函数代码首地址的指针变量称为函数指针。1.函数指针定义函数类型 (*指转载 2011-08-28 11:44:38 · 380 阅读 · 0 评论 -
VC下相对路径相关编程提示
1、建议在程序初始化时(比如CDialog类在OnInitDialog函数中),把程序所在目录的路径存成char类型的类成员。示例程序: char exePath[300], Drive[5], Dir[300], FileName[80], Ext[10]; //获取exe完整路径(包含文件名) GetModuleFileName( NULL,原创 2011-12-19 22:18:23 · 1367 阅读 · 0 评论 -
Unicode下char *转换为CString最简单的办法
使用宏USES_CONVERSION, A2T, A2W。例char * pFileName = "D:\\校内项目\\QQ.bmp";USES_CONVERSION;CString s = A2T(pFileName)//CString s = A2W(pFileName);原创 2012-02-15 16:09:35 · 775 阅读 · 0 评论 -
在CTreeCtrl控件建立完成之后,修改它的style
我们一般是在CTreeCtrl建立的时候,调用其create函数来设定树形控件的style的。但是,我们又常常在资源视图中,绘制一个树形控件,然后关联一个CTreeCtrl m_treeDsp成员变量。这种情况下,我们不能调用create函数来设定它的style(因为它已经建立了)。下面这种方法,可以在CTreeCtrl控件建立完成之后,修改它的style,以下程序推荐在OnI原创 2012-02-20 22:26:41 · 2158 阅读 · 0 评论 -
按一定的角度Z字形遍历一个矩阵
这段程序也是来源于工程,工程中需要我从矩阵的右上角开始,按指定的角度斜线遍历一个矩阵(也就是Z字形遍历),就像下图那样。比如这样一个矩阵0 1 2 34 5 6 78 9 10 1112 13 14 15按45度遍历输出的顺序就是:3 2 7 1 6 1原创 2012-04-26 21:13:22 · 2701 阅读 · 0 评论 -
VC下utf8到UNICODE的编码转换
void utf8tow(wchar_t *pwstr,size_t len,const char *str){ if(str) { size_t nu = strlen(str); size_t n =(size_t)MultiByteToWideChar(CP_UTF8,0,( const char *)str,原创 2012-05-04 20:30:34 · 1636 阅读 · 0 评论 -
C语言中的typeof关键字
来源 http://module77.is-programmer.com/posts/22102.htmltypeof关键字是C语言中的一个新扩展。typeof的参数可以是两种形式:表达式或类型。下面是使用表达式的的例子: typeof(x[0](1)这里假设x是一个函数指针数组,这样就可以得到这个函数返回值的类型了。如果将typeof用于表达式,则该表达式不会执行。转载 2013-07-31 16:50:32 · 1271 阅读 · 0 评论 -
神奇的container_of
container_of是linux内核中常用的一个宏,这个宏的功能是,根据某个结构体字段的指针,找到对应的结构体指针。这个宏的原理是结构体成员指针ptr,减去结构体成员与此结构体首地址的偏移量(这个偏移量由offsetof宏获得),就得出了结构体首地址。这个功能是由宏声明的第三行实现的。原创 2013-08-14 12:03:43 · 5059 阅读 · 0 评论