发布时间:2015-12-12 08:30:15
当使用带有const的指针时其实有两种意思。一种指的是你不能修改指针本身的内容,另一种指的是你不能修改指针指向的内容。听起来有点混淆一会放个例子上来就明白了。 先说指向const的指针,它的意思是指针指向的内容是不能被修改的。它有两种写法。 const&.........【阅读全文】
发布时间:2015-12-10 11:35:05
函数在内存中存储的,因此,函数也有一个起始地址,实际上,函数名就是函数的起始地址。函数指针的形式:返回值(*指针变量名)(形参1,形参2)获取了该函数指针,相当于我们获取了函数,因此,可以通过这个指针来方便的操作函数。例子如下:[cpp] view plaincopy.........【阅读全文】
发布时间:2015-12-10 11:24:16
void的含义void即“无类型”,void *则为“无类型指针”,可以指向任何数据类型。void指针使用规范①void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值。例如:int * pint;void *pvoid;pvoid = pint; /* 不过不能 pint= pvoid; */如果要将pvoid赋给其他类型指针,则需要强.........【阅读全文】
发布时间:2015-12-06 16:02:46
一个线程的结束有两种途径,一种是象我们下面的例子一样,函数结束了,调用它的线程也就结束了;另一种方式是通过函数pthread_exit来实现。另外需要说明的是,一个线程不能被多个线程等待,也就是说对一个线程只能调用一次pthread_join,否则只有一个能正确返回,其他的将返回ESRCH 错误。在Linux中,默认情况下是在.........【阅读全文】
发布时间:2015-12-06 15:39:40
#include <stdio.h>#include <unistd.h>#include <string.h>#include <stdlib.h>#include <pthread.h>#define MAX_ITEM 3 /* 每次最多取三个任务 */typedef struct job * Job;/* 链表结点结构 */struct job{pthread_t tid; /* 线程ID */Job next; /* 下一个链表结点 */int val; /* 结点值 */};pthread_mut.........【阅读全文】