#include<stdio.h> int main() { struct emp { char name[25]; int age; float bs; }; struct emp e; e.name = "Suresh"; e.age = 25; printf("%s %d\n", e.name, e.age); return 0; }
We have to use strcpy(char *dest, const char *source) function to assign a string.
Ex: strcpy(e.name, "Suresh");
#include<stdio.h> int main() { struct emp { char n[20]; int age; }; struct emp e1 = {"Dravid", 23}; struct emp e2 = e1; if(e1 == e2) printf("The structure are equal"); return 0; }
#include<stdio.h> int main() { struct emp { char name[20]; float sal; }; struct emp e[10]; int i; for(i=0; i<=9; i++) scanf("%s %f", e[i].name, &e[i].sal); return 0; }
Sample output: Turbo C (Windows)
c:\>myprogram Sample 12.123 scanf : floating point formats not linked Abnormal program termination
#include<stdio.h> int main() { struct bits { float f:2; }bit; printf("%d\n", sizeof(bit)); return 0; }
#include<stdio.h> int main() { union a { int i; char ch[2]; }; union a z1 = {512}; union a z2 = {0, 2}; return 0; }
struct emp { int ecode; struct emp e; };
struct emp { int ecode; struct emp *e; };
#include<stdio.h> int main() { struct a { float category:5; char scheme:4; }; printf("size=%d", sizeof(struct a)); return 0; }
The char type: char scheme:4; is also a valid statement.
#include<stdio.h> #include<string.h> void modify(struct emp*); struct emp { char name[20]; int age; }; int main() { struct emp e = {"Sanjay", 35}; modify(&e); printf("%s %d", e.name, e.age); return 0; } void modify(struct emp *p) { p ->age=p->age+2; }
#include<stdio.h> int main() { struct bits { int i:40; }bit; printf("%d\n", sizeof(bit)); return 0; }
Comments
There are no comments.Copyright ©CuriousTab. All rights reserved.