Tenir des cordes dans une rangée à taille fixe est utilisation inefficace de mémoire. Une approche plus efficace serait d'employer des indicateurs. Des indicateurs sont employés en structures exactement de la même manière qu'ils sont employés dans des définitions normales d'indicateur.

Data Recovery PRO DATA DOCTOR

Home | Order Online | Downloads | Contact Us | Software Knowledgebase

it | es | pt | fr | de | jp | kr | cn | ru | nl | gr


Après avoir défini la structure, vous pouvez déclarer un exemple de lui et assigner des valeurs aux membres employant la notation de point. L'exemple suivant illustre l'utilisation de la structure de mois.

#include <stdio.h>
#include <string.h>
struct month
{
char name[10];
char abbreviation[4];
int days;
};

int main()
{
struct month m;
strcpy(m.name, "January");
strcpy(m.abbreviation, "Jan");
m.days = 31;
printf("%s is abbreviated as %s and has %d days\n", m.name, m.abbreviation, m.days);
return 0;
}

Le rendement du programme sera comme suit :

January is abbreviated as Jan and has 31 days


Tous les compilateurs C de norme ANSI te permettent d'assigner une structure à l'autre, exécutant une copie membre-sage. Si nous avions des structures de mois appelées m1 et le m2, alors nous pourrions assigner les valeurs de m1 au m2 avec ce qui suit :

  • Structure avec des membres d'indicateur.
  • La structure initialise.
  • Dépassement d'une structure à une fonction.
  • Indicateurs et structures.

Structures avec des membres d'indicateur dans C

Tenir des cordes dans une rangée à taille fixe est utilisation inefficace de mémoire. Une approche plus efficace serait d'employer des indicateurs. Des indicateurs sont employés en structures exactement de la même manière qu'ils sont employés dans des définitions normales d'indicateur. Voyons un exemple :

#include <string.h>
#include <malloc.h>

struct month
{
char *name;
char *abbreviation;
int days;
};

int main()
{
struct month m;

m.name = (char *)malloc((strlen("January")+1) *
sizeof(char));
strcpy(m.name, "January");

m.abbreviation = (char *)malloc((strlen("Jan")+1) *
sizeof(char));
strcpy(m.abbreviation, "Jan");

m.days = 31;

printf("%s is abbreviated as %s and has %d days\n",
m.name, m.abbreviation, m.days);

return 0;
}

Le rendement du programme sera comme suit :

January is abbreviated as Jan and has 31 days


Sample Chapters from book DATA RECOVERY WITH AND WITHOUT PROGRAMMING by Author Tarun Tyagi
Data Recovery with & without Programming


Publishers of the Book
Number of Pages
ISBN
Price of the Book


BPB Publications, New Delhi, India
540
81-7656-922-4
$69.00 (Including Shipping Charges, Cost of Book and Other expenses, Free Source Code CD included with the Book)





Buy Data recovery Book

Previous page

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

 
 

page 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37

 
 

page 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54

 
 

page 55 | 56 | 57 | 58 | 59 | 60

Next page

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Resources | Terms and conditions | Site map

Website Data Recovery | recuperación de Datos | Récupération de données | Datenrettung | Recupero dati | データ復旧 | 데이터 복구 | 数据恢复 | Восстановление данных | De terugwinning van gegevens | Ανάκτηση δεδομένων
Sitemap Site map1 2 3 4 | Spanish1 2 3 | French1 2 3 | German1 2 3 | Italian1 2 3 | Portuguese1 2 3 | Japanese1 2 3 | Korean1 2 3 | Chinese1 2 3 | Russian1 2 3 | Dutch1 2 3 | Greek1 2 3
Data Recovery Book English | Spanish | French | German | Italian | Portuguese | Japanese | Korean | Chinese | Russian | Dutch | Greek