Heim > Backend-Entwicklung > C++ > In der Sprache C sind variable Array-Mitglieder in einer Struktur

In der Sprache C sind variable Array-Mitglieder in einer Struktur

WBOY
Freigeben: 2023-09-14 15:17:09
nach vorne
851 Leute haben es durchsucht

In der Sprache C sind variable Array-Mitglieder in einer Struktur

Flexible Array-Mitglieder in C-Strukturen bedeuten, dass wir Arrays ohne Dimensionen in der Struktur deklarieren können und ihre Größen von Natur aus flexibel sind. Flexible Array-Mitglieder müssen die letzten Mitglieder der Klasse sein.

Hier ist ein Beispiel:

Example

#include
#include
#include
//structure of type employee and must contain at least one more named member
in addition to the flexible array member.
struct employee
{
   int emp_id;
   int name_len;
   int emp_size; //‘emp_size’ variable is used to store the size of flexible
   character array emp_name[].
   char emp_name[]; //Flexible array member emp_name[] should be the last member of class.
};
struct employee *createEmployee(struct employee *e, int id, char a[])
{
   e = (struct employee *)malloc( sizeof(*e) + sizeof(char) * strlen(a)); //memory allocation
   e->emp_id = id;
   e->name_len = strlen(a);
   //Assigning size according to size of emp_name which is a copy of user provided
   array a[].
   strcpy(e->emp_name, a);
   return e;
}
void printEmployee(struct employee *e) //print the details of the employee.
{
   printf("Employee_id : %d</p><p>" "Employee Name : %s</p><p>" "Name Length: %d</p><p></p><p>", e->emp_id, e->emp_name, e->name_len);
}
int main()
{
   struct employee *e1 = createEmployee(e1, 26, "Ram");
   struct employee *e2 = createEmployee(e2, 53, "Madhu");
   printEmployee(e1);
   printEmployee(e2);
   printf("Size of structure Employee: %lu</p><p>",
   sizeof(struct employee));
   return 0;
}
Nach dem Login kopieren

Output

Employee_id : 26
Employee Name : Ram
Name Length: 3
Employee_id : 53
Employee Name : Madhu
Name Length: 5
Size of structure Employee: 12
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonIn der Sprache C sind variable Array-Mitglieder in einer Struktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage