码迷,mamicode.com
首页 >  
搜索关键字:c语言 数组地址 指针    ( 27278个结果
字符 字符串 字符数组 字符串指针 指针数组
一、字符串指针、字符数组1. 字符串指针:字符串指针变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间中并以‘\0’作为串的结束。 char *ps="C Language"; 可以写为: char *ps; #ps字符串指针,是指针...
分类:其他好文   时间:2014-05-16 05:05:14    阅读次数:259
iret指令详解
在“实地址模式”中,IRET 指令执行到中断程序或过程的远返回。在执行此操作的过程中,处理器从堆栈将返回指令指针、返回代码段选择器以及 EFLAGS 映像分别弹入 EIP、CS 以及 EFLAGS 寄存器,然后恢复执行中断的程序或过程。 在“保护模式”中,IRET 指令的操作取决于以下因素:EFLAGS 寄存器中 NT(嵌套任务)与 VM 标志的设置,以及当前堆栈中存储的 EFLAGS 映像...
分类:其他好文   时间:2014-05-15 15:08:25    阅读次数:339
从RTTI谈C++的向下转型
1.什么是RTTI? RTTI 是“Runtime Type Information”的缩写,意思是:运行时类型信息。它提供了运行时确定对象类型的方法。允许“用指向基类的指针或引用来操纵对象”的程序能够获取到“这些指针或引用所指对象”的实际派生类型。在 c++中,为了支持 RTTI 提供了两个操作符 :      1 dynamic_cast 操作符:它允许在运行时刻进行类型转换,从而使程...
分类:编程语言   时间:2014-05-15 11:19:41    阅读次数:407
Leetcode 树 Populating Next Right Pointers in Each Node
题意:给定一棵perfect binary tree,将它每一个节点的next指针都指向该节点右边的节点 思路:dfs 在connect一棵树的时候,需要知道这棵树的根节点和它右边的节点 1.将树的根节点和它右边的节点连接起来 2.递归地将左子树connect起来,需要知道左子树节点和右子树节点 3.递归地将右子树connect起来,需要知道右子树节点和根右边的节点的左子树节点 递归函数为: void connect(TreeLinkNode *root, TreeLinkNode *sibling) 表...
分类:其他好文   时间:2014-05-15 07:14:04    阅读次数:289
Leetcode 树 Populating Next Right Pointers in Each Node II
题意:给定一棵任意二叉树(不一定是perfect binary tree),将它每一个节点的next指针都指向该节点右边的节点 思路:bfs 这里不能用dfs了,只能用bfs bfs遍历将同一层的节点存放在同一个数组里, 然后在遍历每个数组,将前面的节点和后面的节点connect起来, 最后一个节点和NULL connect起来 需要定义一个新的struct结构,保存指向每个节点的指针和该节点所在的层 复杂度:时间O(n), 空间O( n)...
分类:其他好文   时间:2014-05-15 06:12:13    阅读次数:294
通过操作指针,与指针做函数参数'实现字串在主串中出现的次数,然后将出现的部分按照要求进行替换
通过操作指针,与指针做函数参数'实现字串在主串中出现的次数,然后将出现的部分按照要求进行替换...
分类:其他好文   时间:2014-05-15 05:58:16    阅读次数:218
UVALive 6609(Minimal Subarray Length)维护递增序列|RMQ
题意:给一个整数序列(可能有负数),求最短的连续序列使得序列之和大于等于整数x; 解法:第一种是On的复杂度:                   我们要的是sum[j]-sum[i]>=x,如果有两个决策j = sum[j'],那么j就是没用的。即维护一个sum[j]递增序列。然后每次可以二分查找,但是这里有个特点就是要得到最近的,可以同时维护一个left指针,left指针用于跟进更...
分类:其他好文   时间:2014-05-15 03:20:26    阅读次数:303
LeetCode Sort List
在 O(nlogn)的时间内对一个链表进行排序。。明显是要用归并或者快排 第一次知道说原来归并也可以用链表来写,被刷了下三观。。。。。用快慢指针的方法找分界点。 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNod...
分类:其他好文   时间:2014-05-14 15:03:49    阅读次数:230
编程精粹--编写高质量的C语言代码(2):自己设计并使用断言(一)
即使使用编译程序提供的所有警告设施,编译程序所发现的错误,也只是程序错误中的一小部分。例如 以下一行代码:      strCopy=memecpy(malloc(length),str,length)); 当malloc 调用失败时,返回一个空指针,而memcpy如果没有处理空指针时,程序就会出现错误。编译程序是无法查出 这种或其他类似的错误。同样编译程序也无法查出算法的错误,...
分类:编程语言   时间:2014-05-14 14:11:31    阅读次数:474
【设计模式】装饰模式
装饰模式(Decorater)动态的给一个对象添加一些额外的职责。 就增加功能来说,装饰模式比生成子类更加灵活。装饰模式中有几个关键的地方:①装饰模式依赖于【装饰者】类中有一个父类对象(指针), 而装饰函数(或方法)用来此父类对象(指针)设置实际的动态类型。②因为是要给某个对象增加职责,所以很明显的...
分类:其他好文   时间:2014-05-14 12:03:06    阅读次数:297
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!