Περνώντας τις δομές στις λειτουργίες στο γ ως παράμετρο σε μια λειτουργία, τις δομές μπορούν να περάσουν ως παράμετρος σε μια λειτουργία, ακριβώς όπως οποιοιδήποτε από τους βασικούς τύπους στοιχείων. Το ακόλουθο παράδειγμα χρησιμοποιεί μια δομή αποκαλούμενη ημερομηνία που έχει περνούν σε μια λειτουργία isLeapYear για να καθορίσει εάν το έτος είναι ένα έτος πηδήματος.

Files Recovery Software
Σπίτι Στοιχεία Επικοινωνίας Εξυπηρέτηση Πελατών Κατεβάστε το Demo Προϊόντα  

 
 

Διάβαση των δομών στις λειτουργίες στο γ

Τις δομές μπορούν να περάσουν ως παράμετρος σε μια λειτουργία, ακριβώς όπως οποιοιδήποτε από τους βασικούς τύπους στοιχείων. Το ακόλουθο παράδειγμα χρησιμοποιεί μια δομή αποκαλούμενη ημερομηνία που έχει περνούν σε μια λειτουργία isLeapYear για να καθορίσει εάν το έτος είναι ένα έτος πηδήματος.

Κανονικά θα περνούσατε μόνο την αξία ημέρας, αλλά ολόκληρη τη δομή περνούν για να επεξηγήσει τη διάβαση των δομών στις λειτουργίες.

#include <stdio.h>
#include <string.h>

struct month
{
char *name;
char *abbreviation;
int days;
} month_details[] =
{
"Junk", "Junk", 0,
"January", "Jan", 31,
"February", "Feb", 28,
"March", "Mar", 31,
"April", "Apr", 30,
"May", "May", 31,
"June", "Jun", 30,
"July", "Jul", 31,
"August", "Aug", 31,
"September", "Sep", 30,
"October", "Oct", 31,
"November", "Nov", 30,
"December", "Dec", 31
};

struct date
{
int day;
int month;
int year;
};

int isLeapYear(struct date d);

int main()
{
struct date d;

printf("Enter the date (eg: 11/11/1980): ");
scanf("%d/%d/%d", &d.day, &d.month, &d.year);

printf("The date %d %s %d is ", d.day,
month_details[d.month].name, d.year);

if (isLeapYear(d) == 0)

printf("not ");
puts("a leap year");

return 0;
}
int isLeapYear(struct date d)
{
if ((d.year % 4 == 0 && d.year % 100 != 0) ||
d.year % 400 == 0)
return 1;
return 0;
}

Και η εκτέλεση του προγράμματος θα είναι η ακόλουθη:

Enter the date (eg: 11/11/1980): 9/12/1980
The date 9 December 1980 is a leap year

 


Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18

 
 

page 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34

 
 

page 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50

 
 

page 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60

Next page
 
 
Data Recovery Book
 
Κεφάλαιο 1 Μια επισκόπηση της αποκατάστασης στοιχείων
Κεφάλαιο 2 Εισαγωγή των σκληρών δίσκων
Κεφάλαιο 3 Λογική προσέγγιση στους δίσκους και το OS
Κεφάλαιο 4 Συστήματα αριθμού
Κεφάλαιο 5 Εισαγωγή του προγραμματισμού γ
Κεφάλαιο 6 Εισαγωγή στα βασικά υπολογιστών
Κεφάλαιο 7 Απαραίτητες εντολές DOS
Κεφάλαιο 8 Δίσκος-ζωντανό ον λειτουργεί και διακόπτει το χειρισμό με το γ
Κεφάλαιο 9 Διαχειριζόμενοι μεγάλοι σκληροί δίσκοι
Κεφάλαιο 10 Αποκατάσταση στοιχείων από την αλλοιωμένη δισκέτα
Κεφάλαιο 11 Παραγωγή των στηριγμάτων
Κεφάλαιο 12 Ανάγνωση και τροποποίηση MBR με τον προγραμματισμό
Κεφάλαιο 13 Ανάγνωση και τροποποίηση DBR με τον προγραμματισμό
Κεφάλαιο 14 Προγραμματισμός για την αποκατάσταση "ακατέργαστων αρχείων"
Κεφάλαιο 15 Προγραμματισμός για τις ψήκτρες στοιχείων
Κεφάλαιο 16 Ανάπτυξη περισσότερων χρησιμοτήτων για τους δίσκους
Προσάρτημα Γλωσσάριο όρων αποκατάστασης στοιχείων
 
 
Pro Data Doctor

Σπίτι

Προϊόντα

Στοιχεία Επικοινωνίας

Εξυπηρέτηση Πελατών

Κατεβάστε το Demo

Όροι και Προϋποθέσεις

 
Pro Data Doctor