天天看点

c语言指针

指针与一维数组:

指针存储的是变量的地址.

示例程序:

#include <stdio.h>

void main(){

       int arr[] = {12, 15, 16};

       int *p = arr;

       p++;

       printf("%d", *p);

}

       *(p+1) = 17;

动态分配内存:

#include <stdlib.h>

int main(){

       int *p;

       p = malloc(sizeof(*p));

       if(p == null){

              return -1;

       }

       *p = 100;

       free(p);

       return 0;

#include <string.h>

void *fun(char *p, int i){

       p = malloc(i);

       strcpy(p, "hello");

       return p;

       char *p = null;

       int i=32;

       p = fun(p, i);

       printf("%s", p);