30/09/2018, 19:05

Gọi hàm có tham số là con trỏ trong hàm trả về kiểu cấu trúc

Vấn đề như title
CODE: (tượng trưng cho vấn đề, không có ý nghĩa tính toán)

#include <stdio.h>

struct number
{
	int unit;
};

void input(number *unitT)
{
	scanf("%d",&unitT->unit);
}
void x2number(number *unitT)
{
	unitT->unit*=2;
}
number x4number(number unitT)
{
	x2number(&unitT);
	number temp=unitT;
	temp.unit=2*temp.unit;
	return temp;
}
int main()
{
	number *unitA=NULL;
	unitA=(number*)malloc(sizeof(number));
	//input(*unitA);
	unitA->unit=1;
	number* unitT=NULL;
	unitT=(number*)malloc(sizeof(number));
	*unitT=x4number(*unitA);
	printf("%d",unitT->unit);
	free(unitA);
	free(unitT);
	return 0;
}

giá trị của UnitT không đổi khi gọi hàm x2number trong hàm x4number.
xin các pro xem qua ạ!

Gió viết 21:07 ngày 30/09/2018

Mình nghĩ code trên vẫn ra 4. Không biết unitT bạn đang nói ở dòng nào

Minh Hoàng viết 21:12 ngày 30/09/2018

Mình thấy nó vẫn thay đổi mà nhỉ?

Bài liên quan
0