Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/04/2010, 18:29
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: vector de punteros

Función por referencia y por valor:
Código C:
Ver original
  1. #include <stdio.h>
  2.  
  3. void funcion_por_valor(int x){
  4.     x = 5;
  5. }
  6.  
  7. void funcion_por_referencia(int *x){
  8.     *x = 10;
  9. }
  10.  
  11. int main(){
  12.  
  13.     int x = 0;
  14.  
  15.     funcion_por_valor(x);
  16.     printf("funcion_por_valor: %d\n", x);
  17.  
  18.     funcion_por_referencia(&x);
  19.     printf("funcion_por_referencia: %d\n", x);
  20.     return 0;
  21. }

Punteros y arreglos, ejemplo:
Código C:
Ver original
  1. #include <stdio.h>
  2.  
  3. void init(int *array, int size, int value){
  4.     int i;
  5.     for(i = 0; i < size; i++)
  6.         *(array + i) = value;
  7.  
  8. }
  9.  
  10. void print_array(int *array, int size){
  11.     int i;
  12.     for(i = 0; i < size; i++)
  13.         printf("%d\n", *(array + i));
  14. }
  15.  
  16. int main(){
  17.  
  18.     /*Arreglo inicializado con basura*/
  19.     int arr[10];
  20.  
  21.     printf("Arreglo basura\n");
  22.     /*Esto va a imprimir numeros basura, o sea sin algun valor fijo inicial*/
  23.     print_array(arr, 10);
  24.  
  25.     /*Inicializamos el arreglo con 0, las 10 posiciones*/
  26.     init(arr, 10, 0);
  27.  
  28.     printf("\nArreglo inicializado\n");
  29.     /*Esto va a imprimir con ceros*/
  30.     print_array(arr, 10);
  31.  
  32.     return 0;
  33. }