代码的目的是让结构体里面的 List 指针指向申请的一维数组;curNumber表示目前数组里的元素个数;代码编译通过了,但是不能运行出来;求详解!
#include<stdio.h>
#include<stdlib.h>
typedef struct Stack{
int * List;
int curNumber;
}Stack, *link;
int main(){
void initst(link *A);
void pus(link *A,int k);
link *A;
int k = 8;
initst(A);
pus(A, k);
return 0;
}
void initst(link *A){
*A = (link)malloc(sizeof(Stack));
(*A) -> List = (int *)malloc(4 * sizeof(int));
}
void pus(link *A,int k){
*((*A)-> List) = k;
printf("%d \n",*((*A) -> List));
} Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
link *A; int k = 8; initst(&A); ... void initst(link **A){ *A = (link)malloc(sizeof(Stack)); (*A) -> List = (int *)malloc(4 * sizeof(int)); }想要在函数里面改变一级指针参数的指向,要使用二级指针