Chuyển qua tham chiếu có nghĩa là các địa chỉ được gửi dưới dạng đối số.
Lệnh gọi theo tham chiếu hoặc truyền theo phương thức tham chiếu sẽ chuyển các đối số đến một hàm bằng phương thức địa chỉ tới một đối số. Điều này được thực hiện thành tham số chính thức. Bên trong hàm, địa chỉ được sử dụng để truy cập một đối số thực tế.
Ví dụ
#include<stdio.h> void main(){ void swap(int *,int *); int a,b; printf("enter 2 numbers"); scanf("%d%d",&a,&b); printf("Before swapping a=%d b=%d",a,b); swap(&a, &b); //address are sent as an argument printf("after swapping a=%d, b=%d",a,b); getch(); } void swap(int *a,int *b){ int t; t=*a; *a=*b; // *a = (*a + *b) – (*b = * a); *b=t; }
Đầu ra
Khi chương trình trên được thực thi, nó tạo ra kết quả sau -
enter 2 numbers 10 20 Before swapping a=10 b=20 After swapping a=20 b=10