C/C++
喜欢吃菜
这个作者很懒,什么都没留下…
展开
-
数组指针和指针数组的区别
说这个之前先做个优先级准备: 优先级 ( ) > [ ] > * 也就是说 int *a[10]可以看成是 int* a[10],这就可以理解成 a 是一个int*类型的数组,这个数组有10个 int*的数据,也就是有10个指针,所以也叫指针数组。 既然指针数组明白了,那个数组指针就只能是 int (*a)[10]了,我们可以认为 (*a)是一个数组原创 2013-05-16 17:17:35 · 1091 阅读 · 0 评论 -
C语言中函数指针、指针函数、回调函数的简单含义
函数指针和指针函数的区别可以参考《数组指针和指针数组的区别》http://blog.csdn.net/gjhqq/article/details/8936149,下面具体来说说: 1、指针函数:是指函数的返回值类型是一个指针类型,本质是一个函数,如 int *function(void);这里可以认为是int* function(void);返回值是int*,是一个指针。原创 2013-05-21 09:44:33 · 1052 阅读 · 0 评论 -
堆Heap与栈Stack的区别
堆Heap:是大家的共有空间,分全局堆和局部堆。全局堆就是所有没有分配的空间,局部堆就是用户分配的空间。堆是操作系统对进程进行初始化的时候分配,运行过程中也可以向系统申请额外的堆,但是用完了要记得还给操作系统,不然就是内存泄露。堆里面放的一般是静态数据,如static数据、字符串常量等,资源加载后一般也放在堆里面。一个进程的所有线程共有这些堆,所以对堆操作要考虑同步和互斥的问题。程序里面编译后的数原创 2013-05-07 18:37:33 · 578 阅读 · 0 评论 -
2013年百度笔试题第8题
下面代码在i386系列PC中输出是什么: typedef struct st{ int xxx; short* yyy; char ccc[32]; }pst; int main(void){ pst ppp[16]; char* p = (char*)(ppp[2].ccc+32); printf("%d\n",(p-(char*原创 2013-05-07 18:37:38 · 523 阅读 · 0 评论 -
嵌入式软件工程师面试题1
1、what will happen after running this program?#include using namespace std; void getMemory(char *p, int num){ p = (char*)malloc(sizeof(char)*num); } int main(void){ char* str = NULL; g原创 2013-05-07 18:37:36 · 650 阅读 · 0 评论