Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

C - Argumentos de línea de comando

Es posible pasar algunos valores desde la línea de comando a sus programas C cuando se ejecutan. Estos valores se denominan argumentos de línea de comando y muchas veces son importantes para su programa, especialmente cuando desea controlar su programa desde el exterior en lugar de codificar esos valores dentro del código.

Los argumentos de la línea de comando se manejan usando los argumentos de la función main() donde argc se refiere al número de argumentos pasados ​​y argv[] es una matriz de punteros que apunta a cada argumento pasado al programa. El siguiente es un ejemplo simple que verifica si hay algún argumento proporcionado desde la línea de comando y toma las medidas correspondientes −

#include <stdio.h>

int main( int argc, char *argv[] )  {

   if( argc == 2 ) {
      printf("The argument supplied is %s\n", argv[1]);
   }
   else if( argc > 2 ) {
      printf("Too many arguments supplied.\n");
   }
   else {
      printf("One argument expected.\n");
   }
}

Cuando el código anterior se compila y ejecuta con un solo argumento, produce el siguiente resultado.

$./a.out testing
The argument supplied is testing

Cuando el código anterior se compila y ejecuta con dos argumentos, produce el siguiente resultado.

$./a.out testing1 testing2
Too many arguments supplied.

Cuando el código anterior se compila y ejecuta sin pasar ningún argumento, produce el siguiente resultado.

$./a.out
One argument expected

Cabe señalar que argv[0] contiene el nombre del programa en sí y argv[1] es un puntero al primer argumento proporcionado en la línea de comando y *argv[n] es el último argumento. Si no se proporcionan argumentos, argc será uno, y si pasa un argumento entonces argc se establece en 2.

Pasa todos los argumentos de la línea de comando separados por un espacio, pero si el argumento en sí tiene un espacio, puede pasar dichos argumentos colocándolos entre comillas dobles "" o comillas simples ''. Volvamos a escribir el ejemplo anterior una vez más donde imprimiremos el nombre del programa y también pasaremos un argumento de línea de comando poniendo comillas dobles −

#include <stdio.h>

int main( int argc, char *argv[] )  {

   printf("Program name %s\n", argv[0]);
 
   if( argc == 2 ) {
      printf("The argument supplied is %s\n", argv[1]);
   }
   else if( argc > 2 ) {
      printf("Too many arguments supplied.\n");
   }
   else {
      printf("One argument expected.\n");
   }
}

Cuando el código anterior se compila y ejecuta con un solo argumento separado por un espacio pero entre comillas dobles, produce el siguiente resultado.

$./a.out "testing1 testing2"

Program name ./a.out
The argument supplied is testing1 testing2

Lenguaje C

  1. Decodificador
  2. Argumentos de la función de Python
  3. Argumentos de la línea de comandos de Java
  4. ¿Qué es la eficiencia de línea?
  5. ¿Qué es una línea de producción?
  6. ¿Qué es una línea de construcción?
  7. ¿Qué es una derivación en puente?
  8. ¿Qué es una línea de montaje?
  9. Introducción a la línea de corte longitudinal de precisión
  10. Mejoras en la línea de envasado de productos químicos
  11. Perfil de una Línea vs. Perfil de una Superficie