博客专栏  >  编程语言   >  C/C++指针原理

C/C++指针原理

深入浅出C指针,剖析指针实现机制,高级C开发技巧

关注
22 已关注
99篇博文
  • C指针原理(96)-C基础综合应用

    fgets(由文件中读取一字符串)  相关函数 open,fread,fscanf,getc  表头文件 include  定义函数 har * fgets(char * s,int size,...

    2014-02-23 17:03
    1651
  • C指针原理(95)-汇编基础(2)

    在代码段中用“;”表示注释 汇编代码如下:   dp@dp:~ % cat test1.s .section .rodata   output:     .asciz "the numbe...

    2014-02-19 18:13
    1549
  • C指针原理(94)-汇编基础(1)

    AT&T汇编语语言中的数据段与数据类型 .data段定义的数据元素保留在内存中能够被指令读取和写入; .rodata段定义的数据元素只读; .data与.rodata段的数据类型: 1) ...

    2014-02-19 09:33
    1662
  • C指针原理(93)-C应用技巧(3)

    委托模型,即有一个BOSS线程,就是主线程,产生woker线程,boss线程和worker线程并发执行。 BOSS线程的主要任务是创建worker线程,将工作线程放入队列中,当有工作可处理时,唤醒 工...

    2014-02-16 18:03
    1287
  • C指针原理(93)-C应用技巧(2)

    键盘缓冲区残余信息问题  #include int main() {     int a;     char c;      do     {         scanf("%d...

    2014-02-16 17:56
    1005
  • C指针原理(92)-C应用技巧(1)

    字符串小写转大写 #include   int main(void)  {        int i=0;       char string[100];       strcpy(string...

    2014-02-16 17:52
    1277
  • C指针原理(91)-LINUX应用(3)-进程写文件,另一进程读输入

    线程池共享内存+信号量 deepfuture@deepfuture-laptop:~/private/mytest$ gcc -std=gnu99 -o testshm testshm.c t...

    2014-02-16 17:46
    1456
  • C指针原理(90)-LINUX应用(4)-带超时处理的tcp服务

    1.server deepfuture@deepfuture-laptop:~/private/mytest$ ./testtcps server wait.... ....................

    2014-02-16 17:42
    1424
  • C指针原理(89)-LINUX应用(2)-线程池

    knoppix@Microknoppix:/mnt-system/lx/test$ gcc -D_REENTRANT -lpthread -o testcondout testcondout.c kn...

    2014-02-16 17:38
    1460
  • C指针原理(88)-LINUX应用(1)

    一、在linux平台下,每个线程可有专用数据: #include #include struct mydata{        int x;        char c[4]; }; ...

    2014-02-16 17:36
    1406
  • C指针原理(87)-helloworld的C程序汇编剖析(3)

    “.LC0”标记的内存位于应用程序的静态分配区域,这个区域在程序运行后即被分配,即“hello,world”作为一个C语言字符串常量被安排在静态分配区域。 还有一个非常重要内存分配区域就是堆栈,,堆栈...

    2014-02-12 11:03
    1492
  • C指针原理(86)-helloworld的C程序汇编剖析(2)

    分析通过GCC编译C语言程序生成的汇编代码,能清楚得了解C语句运行机制、内存分配机制等隐藏在C语言代码下的内部工作原理。下面将对helloworld程序生成的汇编进行分析。 (1)寄存器基础知识   ...

    2014-02-12 11:01
    1516
  • C指针原理(85)-helloworld的C程序汇编剖析(1)

    一、汇编基础 1、指令码与数据处理 当计算机处理应用程序运行指令码时,数据指针指示处理器如何在内存的数据区域寻找要处理的数据,这块区域也称为堆栈,指令码放在另外的指令区,此外,还有指令指针机制,当处理...

    2014-02-11 12:51
    1897
  • C指针原理(84)-内存管理与控制

    多个内存块(Chunks)通常具有相同的尺寸,从内存块边界地址开始,多个领域( Arena)将众多内存块分割成较小的空间进行分配,超大的内存分配(huge arena)要同时占据多个连续内存块(Chu...

    2014-01-30 20:35
    1696
  • C指针原理(83)-内存管理与控制

    在多处理器中,内存分配如何减少程序的多个线程的锁竞争?可采用在每个分配器中放置一个锁,为分配器准备多个领域,通过对线程标识的HASH计算将各个线程分配到这些领域中,如下图所示:   jemalloc使...

    2014-01-30 15:58
    1603
  • C指针原理(82)-内存管理与控制

    堆中分配的每块内存都应被free函数释放,free函数要释放内存块,就意味着它必须知道释放多大的内存块,然后调用该函数,并没有将需要释放的内存大小告诉它,因此,必须有一种数据结构记录每个已经分配的内存...

    2014-01-30 11:39
    1662
  • C指针原理(81)-内存管理与控制

    C语言的stdlib库提供了内存分配与管理的函数: 1、通过调用calloc、malloc和realloc所分配的空间,如果连续调用它们,不能保证空间是顺利或连续的。当分配成功后,函数将返回一个指针...

    2014-01-29 16:14
    1451
  • C指针原理(80)-递归(4)

    BF解释器分析: 1、main函数以只读方式打开BF语言的源代码文件,然后,将BF源文件按字节逐个拷入数组f中,并在最后加上字符串的结束标志0,最后,以数组f为参数,调用interpret函数解释执行...

    2014-01-29 12:37
    1530
  • C指针原理(79)-递归(3)

    编译: dp@dp:~ % gcc bfi.c -o bfi bfi.c: In function 'interpret': bfi.c:35: warning: incompatible im...

    2014-01-29 11:27
    1069
  • C指针原理(78)-递归(2)

    、rainfuck解释器C语言实现 Brainfuck,是一种极小化的计算机语言,它是由Urban Müller在1993年创建的。一种简单的、可以用最小的编译器来实现的、符合图灵完全思想的编程语言。...

    2014-01-29 11:11
    1593
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部