Monday, July 20, 2020

Struct và hàm trong C

Trong hướng dẫn này, bạn sẽ học cách chuyển các biến cấu trúc thành đối số cho hàm. Bạn sẽ học cách trả về struct từ một hàm với sự trợ giúp của các ví dụ.
Tương tự như các biến của các kiểu dựng sẵn, bạn cũng có thể truyền các biến cấu trúc cho một hàm.
Truyền các cấu trúc cho các chức năng.
Struct và hàm trong C

Chúng tôi khuyên bạn nên tìm hiểu các hướng dẫn này trước khi bạn tìm hiểu cách chuyển cấu trúc cho các chức năng.
Struct trong C
Hàm trong C
Sau đây là ví dụ:
#include <stdio.h>
struct student {
   char name[50];
   int age;
};
void display(struct student s);
int main() {
   struct student s1;
   printf("Enter name: ");
   scanf("%[^\n]%*c", s1.name);
   printf("Enter age: ");
   scanf("%d", &s1.age);
   display(s1);
   return 0;
}
void display(struct student s) {
   printf("\nDisplaying information\n");
   printf("Name: %s", s.name);
   printf("\nAge: %d", s.age);
}
Kết quả:
Enter name: Bond
Enter age: 13
Displaying information
Name: Bond
Age: 13  
Trả về struct từ một hàm
ví dụ:
#include <stdio.h>
struct student
{
    char name[50];
    int age;
};
// function prototype
struct student getInformation();
int main()
{
    struct student s;
    s = getInformation();
    printf("\nDisplaying information\n");
    printf("Name: %s", s.name);
    printf("\nRoll: %d", s.age);
   
    return 0;
}
struct student getInformation()
{
  struct student s1;
  printf("Enter name: ");
  scanf ("%[^\n]%*c", s1.name);
  printf("Enter age: ");
  scanf("%d", &s1.age);
 
  return s1;
}
Ở đây, hàm getIn information () được gọi bằng s = getIn information (); tuyên bố. Hàm trả về một cấu trúc của kiểu struct student. Cấu trúc trả về được hiển thị từ hàm main ().
Lưu ý rằng, kiểu trả về của getIn information () cũng là struct student.

No comments:

Post a Comment