MIT的C指针练习代码

来源:互联网 发布:在线客服源码下载 编辑:程序博客网 时间:2024/06/05 08:41

MIT的C指针练习代码



觉得很好的代码,贴出来.   大概瞄了一眼,感觉不是很难  现在比较忙,以后做解析(如果有必要的话)

#include <stdio.h>#include <stdlib.h>voidf(void){    int a[4];    int *b = malloc(16);    int *c;    int i;    printf("1: a = %p, b = %p, c = %p\n", a, b, c);    c = a;    for (i = 0; i < 4; i++)a[i] = 100 + i;    c[0] = 200;    printf("2: a[0] = %d, a[1] = %d, a[2] = %d, a[3] = %d\n",   a[0], a[1], a[2], a[3]);    c[1] = 300;    *(c + 2) = 301;    3[c] = 302;    printf("3: a[0] = %d, a[1] = %d, a[2] = %d, a[3] = %d\n",   a[0], a[1], a[2], a[3]);    c = c + 1;    *c = 400;    printf("4: a[0] = %d, a[1] = %d, a[2] = %d, a[3] = %d\n",   a[0], a[1], a[2], a[3]);    c = (int *) ((char *) c + 1);    *c = 500;    printf("5: a[0] = %d, a[1] = %d, a[2] = %d, a[3] = %d\n",   a[0], a[1], a[2], a[3]);    b = (int *) a + 1;    c = (int *) ((char *) a + 1);    printf("6: a = %p, b = %p, c = %p\n", a, b, c);}intmain(int ac, char **av){    f();    return 0;}





0 0
原创粉丝点击