Για να αντιγραφούν τα περιεχόμενα μιας δομής σε μια άλλη, χρησιμοποιούμε τον τελεστή ανάθεσης. Τι θα τυπώσει αυτό το πρόγραμμα;
#include <stdio.h>
struct point { int x; int y; };
int main() {
struct point pt1 = { 3, 4 };
struct point pt2;
printf("%d %d\n", pt2.x, pt2.y);
pt2 = pt1;
printf("%d %d\n", pt2.x, pt2.y);
return 0;
}
Εξετάστε χωριστά τα δύο printf: τι περιέχει το pt2 πριν από την ανάθεση, αφού
δεν αρχικοποιήθηκε; Και τι αντιγράφει η ανάθεση ανάμεσα σε δύο δομές ίδιου τύπου;
Αριθμός στον οδηγό: Α19.3
(στο κεφάλαιο) ·
Μόνιμο αναγνωριστικό: slides-lec19-struct-assign ·
Σύνδεσμος: https://progintro.github.io/study/questions/slides/slides-lec19-struct-assign.html ·
Markdown (GitHub)