摘要:
7-4-1指针参数是如何传递内存的?如果函数的参数是一个指针,不要指望用该指针去申请动态内存。示例7-4-1中,Test函数的语句GetMemory(str,200)并没有使str获得期望的内存,str依旧是NULL,为什么?void GetMemory(char *p, int num){p = ... 阅读全文
posted @ 2014-10-02 23:03
chrispauls
阅读(205)
评论(0)
推荐(0)
摘要:
局部变量func(){int a;int b=0;}很多书籍中也叫自动变量,它声明在函数块内,作用范围也在函数块内。 不能被同一源文件的其他函数使用,也不能被其他文件中的函数使用。局部变量存储在栈中。无论局部变量显示初始化(如b),或者未初始化(如a),都只有当定义它们的程序块被调用时(即执行时),... 阅读全文
posted @ 2014-10-02 15:04
chrispauls
阅读(161)
评论(0)
推荐(0)
摘要:
int main() { int arr[] = {6,7,8,9,10}; int *ptr = arr; *(ptr++) += 123; printf("%d ,%d/n",*ptr,*(++ptr));... 阅读全文
posted @ 2014-10-02 14:31
chrispauls
阅读(146)
评论(0)
推荐(0)
摘要:
一个程序至少有一个进程,一个进程至少有一个线程.线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不... 阅读全文
posted @ 2014-10-02 14:03
chrispauls
阅读(129)
评论(0)
推荐(0)
摘要:
一个程序至少有一个进程,一个进程至少有一个线程.线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不... 阅读全文
posted @ 2014-10-02 14:03
chrispauls
阅读(120)
评论(0)
推荐(0)
摘要:
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工厂的电力有限,一次只能供给一个车间使用。也就是... 阅读全文
posted @ 2014-10-02 13:59
chrispauls
阅读(129)
评论(0)
推荐(0)
摘要:
1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:#define PI 3.1415926 程序中的:area=PI*r*r 会替换为3.1415926*r*r 如果你把#define... 阅读全文
posted @ 2014-10-02 13:32
chrispauls
阅读(153)
评论(0)
推荐(0)
摘要:
1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如: #define PI 3.1415926 程序中的:area=PI*r*r 会替换为3.1415926*r*r 如果你把#defin... 阅读全文
posted @ 2014-10-02 13:32
chrispauls
阅读(128)
评论(0)
推荐(0)
摘要:
ANSIC的,如果认为malloc(0)是语法错误的话,下面我写的就不用看了。 下面进入正题,关于malloc(0)这个问题,我在网上看到有个面试题好像就是问这个的,原题好像是:char*ptr; if((ptr=(char*)malloc(0))==NULL)puts("Gotanullpoint... 阅读全文
posted @ 2014-10-02 13:23
chrispauls
阅读(145)
评论(0)
推荐(0)

浙公网安备 33010602011771号