Для вызова функции по ссылке, а не ближнего переменной, передавать адрес переменной. Адрес переменной можно принять и с помощью оператора. Dereferencing достигается в С с помощью указателя (*) нотации. Функции могут быть рекурсивными, которое функция может называть себя.

Data Recovery PRO DATA DOCTOR

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

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


Вызов по ссылке

Для вызова функции по ссылке, а не ближнего переменной, передавать адрес переменной. Адрес переменной можно принять и с помощью оператора. Следующий призыв подкачки функцию, передавая адрес переменных вместо фактических значений.

swap(&x, &y);

Dereferencing

Проблема, которая сейчас состоит в том, что функция подкачки были приняты решения, а не переменной поэтому нам нужно dereference, с которыми мы имеем дело с фактическими значениями вместо адреса от переменных для их подкачки.

Dereferencing достигается в С с помощью указателя (*) нотации. Проще говоря, это означает уделение * перед каждой переменной перед ее использованием, с тем, что он ссылается на значение переменной вместо ее адреса. Следующая программа иллюстрирует ближнего - по ссылке в своп два значения.

#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;
}

Давайте посмотрим результаты работы программы :

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

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

Функции могут быть рекурсивными, которое функция может называть себя. Каждое слово требует себе, что нынешнее состояние является функцией оттесняются на стеке. Очень важно помнить этот факт можно легко создать переполнение стека, т.е. стек исчерпан в помещение для хранения любой дополнительной информации.

Следующий пример вычисляет Факториал числа от использования рекурсии. - Это факториал числа, умноженные на целое число раз в других ниже себя, вплоть до 1. Например, факториал числа 6 :

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

Поэтому факториал 6, 720. Как видно из приведенного примера, что факториал 6 = 6 * 5 факториал. Кроме того, факториал 5 = 5 * 4 факториал, и так далее.

Ниже приводятся общие правила исчисления факториал числа.

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

Выше правилу прекращается при 100 мм, как факториал 1 равен 1. Давайте попытаемся лучше понять ее с помощью примера :

#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);
}

Посмотрим результаты выполнения этой программы :

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