Изменение данных функцией - C (СИ)
Формулировка задачи:
Всем доброго времени суток. Казалось бы, что функция должна менять значение adr0, но нет. Почему так?
#include <stdio.h>
#include <malloc.h>
struct spis{
int a;
struct spis* adr;
};
struct spis* adr0=NULL;
int adl(struct spis* aa,int integ){
struct spis* temp;
temp=(struct spis*)malloc(sizeof(struct spis));
//temp->a=integ;
//temp->adr=aa;
aa=temp;
printf("%i\n",aa);
return 0;}
int main(){
adl(adr0,0);
printf("%i\n",adr0);
return 0;}Решение задачи: «Изменение данных функцией»
textual
Листинг программы
#include <stdio.h>
#include <malloc.h>
struct spis{
int a;
struct spis* adr;
};
struct spis* adr0=NULL;
struct spis* adl(struct spis* aa,int integ){
struct spis* temp;
temp=(struct spis*)malloc(sizeof(struct spis));
//temp->a=integ;
//temp->adr=aa;
aa=temp;
printf("%i\n",aa);
return aa;}
int main(){
adr0=adl(adr0,0);
printf("%i\n",adr0);
return 0;}