Een functie vraag-door-verwijzing maken, in plaats van het overgaan van variabele zelf, gaat het adres van variabele over. Het adres van de variabele kan door gebruiken & exploitant worden genomen. Dereferencing wordt bereikt in C door de wijzer(*) aantekening te gebruiken. De functies kunnen recursief zijn dat een functie kan roepen is.

Data Recovery PRO DATA DOCTOR

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

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


Vraag-door-verwijzing

Een functie vraag-door-verwijzing maken, in plaats van het overgaan van de variabele zelf, gaat het adres van de variabele over. Het adres van de variabele kan door gebruiken & exploitant worden genomen. De volgende vraag een ruilmiddelfunctie die het adres van variabelen in plaats van de daadwerkelijke waarden overgaat.

swap(&x, &y);

Dereferencing

Het probleem dat wij nu zijn dat het functieruilmiddel het adres eerder dan de variabele hebben gehad is overgegaan, zo wij nodig hebben aan dereference de variabelen zodat wij bekijken de daadwerkelijke waarden eerder dan de adressen van de variabelen om hen te ruilen.

Dereferencing wordt bereikt in C door de wijzer(*) aantekening te gebruiken. In eenvoudige termen, dit plaatsen * vóór elke variabele alvorens het betekent te gebruiken opdat het naar de waarde van de variabele eerder dan zijn adres verwijst. Het volgende programma illustreert over:gaan-door-verwijzing naar ruilmiddel twee waarden.

#include <stdio.h>
void swap(int *x, int *y);

int main()
{
int x=6, y=10;
printf("Before the function swap, x = %d and y =
%d\n\n", x, y);

swap(&x, &y);

printf("After the function swap, x = %d and y =
%d\n\n", x, y);
return 0;
}

void swap(int *x, int *y)
{
int temp = *x;
*x = *y;
*y = temp;
}

Zie de output van het programma:

Before the function swap, x = 6 and y = 10

After the function swap, x = 10 and y = 6

De functies kunnen recursief zijn dat een functie kan roepen is. Elke vraag aan zich vereist dat de huidige staat van de functie op de stapel wordt geduwd. Het is belangrijk om dit feit te herinneren aangezien het gemakkelijk is om een stapeloverstroming tot stand te brengen, d.w.z. heeft de stapel uit ruimte gelopen om meer gegevens te plaatsen.

Het volgende voorbeeld berekent Factor van een aantal gebruikend terugkeer. Factor is een aantal dat met elk ander geheel onder zich, onderaan aan 1 wordt vermenigvuldigd. Bijvoorbeeld, is factor van aantal 6:

Factorial 6 = 6 * 5 * 4 * 3 * 2 * 1

Daarom is factor van 6 720. Men kan zien van het bovengenoemde voorbeeld dat factor 6 = 6 * factor 5. Men kan zien van het bovengenoemde voorbeeld dat factor 6 = 6 * factor 5. Op dezelfde manier factor 5 = 5 * factor 4, enz. zo.

Het volgende is de algemene regel om factoraantallen te berekenen.

factorial(n) = n * factorial(n-1)

De bovengenoemde regel eindigt wanneer n = 1, aangezien factor van 1 1. is proberen om het met behulp van voorbeeld beter te begrijpen:

#include <stdio.h>
long int factorial(int num);

int main()
{
int num;
long int f;

printf("Enter a number: ");
scanf("%d", &num);

f = factorial(num);

printf("factorial of %d is %ld\n", num, f);
return 0;
}

long int factorial(int num)
{
if (num == 1)
return 1;

else
return num * factorial(num-1);
}

Zie de output van de uitvoering van dit programma:

Enter a number: 7
factorial of 7 is 5040

 

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