Trabalhando com argumentos e ponteiros

Publicado por Bruno Gola 24/10/2006

[ Hits: 6.296 ]

Download ponteiros_args.c




Este é um pequeno exemplo de como funcionam os argumentos passados via linha de comando para o programa. Mostra a estrutura argv (ponteiro para ponteiro) e os valores para onde ela aponta.

  



Esconder código-fonte

#include <stdlib.h>
#include <stdio.h>

/* Este código tem como intuito apenas ilustrar e exemplificar o uso de ponteiros em C e como manipular os argumentos
 * passados via linha de comando para o programa.
 *
 * Bruno Gola - < brunogola em gmail ponto com > */

int main(int argc, char** argv) {
   int i;
   printf("\n\n");
   /* Imprime posição de memória do primeiro argumento, do array (ou ponteiro para ponteiro de char) argv e o número 
    * de argumentos passados */
   printf("Argumentos: %d\n\nPosicao inicial de *argv: %p\n\nPosicao de **argv: %p \n\n", argc, &argv[0], &argv);
   
   /* Imprime cada argumento passado na linha de comando usando o array argv (ponteiro para ponteiro de char) */
   for(i=0;i < argc;i++)
      printf("Argumento %d: %s\n",i,argv[i]);

   printf("\n\n");

   /* Imprime a posição de memória de cada ponteiro do array argv */
   for(i=0;i < argc;i++)
                printf("Posição na memória, argumento %d: %p\n",i,&argv[i]);

   printf("\n\n");

   /* Imprime cada argumento passado na linha de comando usando aritimética de ponteiros, ou seja, somo i à posição 
    * de memória do primeiro argumento */
        for(i=0;i < argc;i++)
                printf("Argumento %d: %s\n",i,*(argv+i));

   return 0;
}

Scripts recomendados

Verificando se um número é primo.

Tabuada no terminal

Histograma - C++

funcsoma2.c - Soma 2 pontos flutuantes

Resolução de uma fórmula de mátemática


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts