Fazer uma cham-por-referência da função, em vez de passar a variável própria, passa o endereço da variável. O endereço da variável pode ser feito exame usar-se & por operador. Dereferencing é conseguido em C usando a notação do ponteiro (*). As funções podem ser recursive que é uma função pode se chamar.

Files Recovery Software
Início Detalhes de Contato Apoio ao Cliente Download Demo Produtos  

 
 

Call-by-reference

Fazer uma cham-por-referência da função, em vez de passar a variável própria, passa o endereço da variável. O endereço da variável pode ser feito exame usar-se & por operador. As seguintes chamadas uma função da troca que passa o endereço das variáveis em vez dos valores reais.

swap(&x, &y);

Dereferencing

O problema que nós temos é agora que a troca da função estêve passada ao endereço melhor que à variável, assim que nós necessitamos dereference as variáveis de modo que nós estejamos olhando os valores reais melhor que os endereços das variáveis a fim as trocar.

Dereferencing é conseguido em C usando a notação do ponteiro (*). Em termos simples, isto significa colocar a * antes de cada um variável antes de usá-lo a fim de que consulte ao valor da variável melhor que a seu endereço. O seguinte programa ilustra a pass-por-referência para trocar dois valores.

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

Deixar-nos ver a saída do programa:

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

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

As funções podem ser recursive que é uma função pode se chamar. Cada chamada a se requer que o estado atual da função está empurrado na pilha. É importante recordar este fato porque é fácil criar um excesso de pilha, isto é a pilha funcionou fora do espaço ao lugar any more dados.

O seguinte exemplo calcula o Factorial de um número usando o recursion. Um factorial é um número multiplicado por cada outro inteiro abaixo dse, para baixo a 1. Por exemplo, o factorial do número 6 é:

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

Conseqüentemente o factorial de 6 é 720. Pode-se ver do exemplo acima esses 6 factorial = 6 * 5 factorial. Similarmente, 5 factorial = 5 * 4 factorial, e assim por diante.

O seguinte é a régua geral para calcular números factorial.

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

A régua acima termina quando n = 1, como o factorial de 1 é 1. Deixar-nos tentar compreendê-la mais melhor com a ajuda do exemplo:

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

Deixar-nos ver a saída da execução deste programa:

Enter a number: 7
factorial of 7 is 5040

 


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 livro
 
Capítulo-1 Uma vista geral da recuperação dos dados
Capítulo-2 Introdução de discos duros
Capítulo-3 Aproximação lógica aos discos e ao ósmio
Capítulo-4 Sistemas de número
Capítulo-5 Introdução da programação de C
Capítulo-6 Introdução aos princípios do computador
Capítulo-7 Comandos necessários do DOS
Capítulo-8 Funções e interrupções do Disco-BIOS que seguram com C
Capítulo-9 Segurando discos duros grandes
Capítulo-10 Recuperação dos dados do disco flexível Corrupted
Capítulo-11 Fazendo apoios
Capítulo-12 MBR de leitura e modificando com programação
Capítulo-13 DBR de leitura e modificando com programação
Capítulo-14 Programação para “a recuperação da lima crua”
Capítulo-15 Programação para limpadores dos dados
Capítulo-16 Desenvolvendo mais utilidades para discos
Apêndice Glossário de termos da recuperação dos dados
 
 
Pro Data Doctor

Início

Produtos

Detalhes de Contato

Apoio ao Cliente

Download Demo

Termos e Condições

 
Pro Data Doctor