En strukturpekare definieras som pekaren som pekar på adressen till minnesblocket som lagrar en strukturera känd som strukturpekaren. Komplexa datastrukturer som länkade listor, träd, grafer, etc. skapas med hjälp av strukturpekare. Strukturpekaren talar om adressen för en struktur i minnet genom att peka variabeln till strukturvariabeln.
Exempel:
C
char till strängjava
// C program to demonstrate structure pointer> #include> struct> point {> >int> value;> };> int> main()> {> >struct> point s;> > >// Initialization of the structure pointer> >struct> point* ptr = &s;> >return> 0;> }> |
>
>
css opacitetsövergång
I ovanstående kod s är en instans av struct point and ptr är structpekaren eftersom den lagrar adressen till structpunkten.
Få tillgång till strukturmedlemmen med hjälp av pekare
Det finns två sätt att komma åt strukturens medlemmar med hjälp av en strukturpekare:
- Med hjälp av (*) asterisk eller inriktningsoperator och (.) punktoperator.
- Med hjälp av ( -> ) piloperator.
Nedan finns programmet för att komma åt strukturmedlemmarna med hjälp av strukturpekaren med hjälp av punktoperatorn.
C
konvertera ett heltal till en sträng
// C Program to demonstrate Structure pointer> #include> #include> struct> Student {> >int> roll_no;> >char> name[30];> >char> branch[40];> >int> batch;> };> int> main()> {> >struct> Student s1;> >struct> Student* ptr = &s1;> >s1.roll_no = 27;> >strcpy>(s1.name,>'Kamlesh Joshi'>);> >strcpy>(s1.branch,>'Computer Science And Engineering'>);> >s1.batch = 2019;> >printf>(>'Roll Number: %d
'>, (*ptr).roll_no);> >printf>(>'Name: %s
'>, (*ptr).name);> >printf>(>'Branch: %s
'>, (*ptr).branch);> >printf>(>'Batch: %d'>, (*ptr).batch);> >return> 0;> }> |
>
>
konvertera sträng till datumProduktion:
1>
Nedan finns programmet för att komma åt strukturmedlemmarna med hjälp av strukturpekaren med hjälp av piloperatorn. I det här programmet har vi skapat en strukturstudent som innehåller strukturvariabel s. Strukturstudenten har roll_no, namn, gren och batch.
C
// C Program to demonstrate Structure pointer> #include> #include> // Creating Structure Student> struct> Student {> >int> roll_no;> >char> name[30];> >char> branch[40];> >int> batch;> };> // variable of structure with pointer defined> struct> Student s, *ptr;> int> main()> {> >ptr = &s;> >// Taking inputs> >printf>(>'Enter the Roll Number of Student
'>);> >scanf>(>'%d'>, &ptr->roll_no);> >printf>(>'Enter Name of Student
'>);> >scanf>(>'%s'>, &ptr->namn);> >printf>(>'Enter Branch of Student
'>);> >scanf>(>'%s'>, &ptr->filial);> >printf>(>'Enter batch of Student
'>);> >scanf>(>'%d'>, &ptr->batch);> >// Displaying details of the student> >printf>(>'
Student details are:
'>);> >printf>(>'Roll No: %d
'>, ptr->roll_no);> >printf>(>'Name: %s
'>, ptr->namn);> >printf>(>'Branch: %s
'>, ptr->filial);> >printf>(>'Batch: %d
'>, ptr->batch);> >return> 0;> }> |
jsp javatpoint
>
>
Produktion:
Enter the Roll Number of Student 27 Enter Name of Student Kamlesh_Joshi Enter Branch of Student Computer_Science_And_Engineering Enter batch of Student 2019 Student details are: Roll No: 27 Name: Kamlesh_Joshi Branch: Computer_Science_And_Engineering Batch: 2019>