码迷,mamicode.com
首页 >  
搜索关键字:指针 十六进制转十进制    ( 27276个结果
GLUT的一个简洁OO封装
Member function 如何作为Callback? 这里其实是两个问题。 第一个问题,member function的函数签名上有this指针,不能直接传给glut*Func作为callback。 member function不行,很自然的想到static function。 第二个问题,static function如何能够调用member function,且与之关联的对象(this指针)能够在运行时期(或者用户程序)决定? 其一,static function调用member functi...
分类:其他好文   时间:2014-06-09 23:27:43    阅读次数:313
c++对象模型
c++对象模型保证,main()之前构造出来要用的对象c++中成员函数 不在对象之类,多个对象只有个副本,虚函数会增大大小编译器会在构造函数最前面,插入成员队象构造函数来初始化成员对象,放置vitual table 地址。类有多个虚函数的大小与一个是一样的,我电脑上是8个字节,两个指针吗当一个基类被...
分类:编程语言   时间:2014-06-09 22:26:15    阅读次数:301
指针之尚未学到家
前日写了个二叉树插入节点的操作,是一个递归函数。在遍历树时发现并没有插入到树中。这可就纳了闷,单步跟踪发现了令我感到奇怪事情,为什么插入函数的参数是指针,而且被改变了,但函数外部为改变呢。请教高人之后豁然开朗。。。对于c语言的指针,初学者有诸多困惑,虽不至于令人害怕,但使用不当,会使程序出错或埋下隐...
分类:其他好文   时间:2014-06-08 22:17:35    阅读次数:295
循环链表的实现与操作(C语言实现)
循环链表是另一种形式的链式存贮结构。它的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环。 循环链表的操作 1,循环链表的新操作 2, 获取当前游标指向的数据元素 3, 将游标重置指向链表中的第一个数据元素 4,将游标移动指向到链表中的下一个数据元素 5,直接指定删除链表中的某个数据元素 CircleListNode* CircleList_DeleteNode(CircleList* list, CircleListNode* node); CircleListNode* Ci...
分类:编程语言   时间:2014-06-08 17:04:24    阅读次数:242
C++中volatile关键字的分析
volatile关键字表明,即使程序代码没有对内存单元进行修改,其值也可能发生变化。例如,可以将一个指针指向某个硬件位置,其中包含了来自串行端口的时间或信息。在这种情况下,硬件(而不是程序)可能修改其中的内容。或者两个程序可能互相影响,共享数据。该关键字的作用是为了改善编译器的优化能力。例如,假设编译器发现,程序在几条语句中两次使用了某个变量的值,则编译器可能不是让程序查找这个值两次,而是将这个值...
分类:编程语言   时间:2014-06-08 05:34:29    阅读次数:278
玩转VC++实现CallBack
题目有点大,其实本文只是要DEMO一下用函数指针在VC++实现回调。 一、函数指针 那么什么是函数指针呢?说白了就是指向函数的指针,它是一个变量。 通常,函数会被编译为一段二进制机器码。每个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址。 可以把函数的这个首地址(入口地址)赋予一个指针变量,使该指针变量指向该函数。 那么就可以通过该指针变量就可以找到并且调用这个函数了...
分类:编程语言   时间:2014-06-08 03:53:46    阅读次数:369
常见的CPU访问引起的内存保护问题为什么只用event_122上报 - 举例1
在代码维护中,发现一个指针的初始值是0,在没有走到正常分支处该指针是不会被赋值的,而在软件的启动阶段,恰恰该指针不会走到正常分支,所以在后面使用该指针的时候,并没有判断指针值是否为空,所以CPU使用空指针访问,就会出现问题,并在L1内存控制器中被检测到,通过event 122=0x7A上报。 根据下图CPU通过空指针访问0x48的地址,是因为空指针指向一个结构体,在用指针去访问结构体中某个变量,...
分类:其他好文   时间:2014-06-08 03:46:13    阅读次数:217
关于Netfilter NF_HOOK宏的outdev参数bug
1.首先指出,NF_HOOK系列宏的outdev参数的传递方式(直接传递一个net_device结构体指针)是不正确的正确的方式要么是不传递,要么是传递指针的地址,即地址的地址。2.接下来指出,仅仅传递一个地址为何不对因为在该HOOK点可能存在多个HOOK函数,每一个函数都有可能改变skb的路由,即调用reroute,比如NAT,比如IP Mark等,这样后续的HOOK函数看到的依然是旧的outd...
分类:Web程序   时间:2014-06-08 03:27:38    阅读次数:258
双向链表的实现与操作(C语言实现)
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。 单链表的局限 1,单链表的结点都只有一个指向下一个结点的指针 2,单链表的数据元素无法直接访问其前驱元素 3,逆序访问单链表中的元素是极其耗时的操作...
分类:编程语言   时间:2014-06-08 02:16:06    阅读次数:352
[LeetCode] Two Sum [17]
题目 :Input: numbers={2, 7, 11, 15}, target=9 Output: index1=1, index2=2 解题思路: 给出一个数组合一个数,如果两个数的和等于所给的数,求出该两个数所在数组中的位置。 这个题也挺常见的,就是两个指针,从前后两个方向扫描。但是本题有以下几个需要的点: 1. 所给数组不是有序的; 2. 返回的下标是从1开始的,并且是原来无序数组中的下标; 3. 输入数组中可能含有重复的元素。 好了,把以上三点想到的话,做这个题应该不会有啥问题。 具体方法:把原...
分类:其他好文   时间:2014-06-08 02:14:06    阅读次数:250
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!