AD

¿Ya dominas lo básico? Un curso estructurado de Objective-C es la vía rápida para dar el salto.

Ver cursos de Objective-C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🍎Lecciones de Objective-C
Lección 55 / 68

Recibir argumentos de la línea de órdenes

En esta lección harás que tu programa reciba datos al arrancarlo.

main recibe argc, el número de argumentos, y argv, el array con ellos. argv[0] es el nombre del programa, así que el primer argumento real está en la posición 1.

El código de ejemplo se ejecutaría pasando dos argumentos, y la salida de referencia corresponde a esa llamada.

La comprobación if (argc > 2) es imprescindible: acceder a una posición que no se pasó lee memoria arbitraria. En C no hay ninguna red de seguridad aquí.

Fíjate en el marcador %s en lugar de %@: los argumentos son cadenas de C, no objetos NSString. Usar el marcador equivocado con estos dos tipos es una fuente clásica de caídas, porque %@ intentaría enviar un mensaje a algo que no es un objeto. Para convertir se usa [NSString stringWithUTF8String:argv[1]].

En el mundo de Apple existe además NSProcessInfo, que da los argumentos ya como objetos, y NSUserDefaults interpreta automáticamente los del estilo -clave valor.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Objective-C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)