elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Vector de cadena de caracteres
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Vector de cadena de caracteres  (Leído 2,512 veces)
NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Vector de cadena de caracteres
« en: 6 Agosto 2019, 05:11 am »

Estimados,
buenas tardes.

Necesito hacer un codigo que me permite ingresar una descripcion por cada cada articulo de un vector.

Lo tengo hasta ahora es lo siguiente:

Funcion

Código
  1. void validarVectorDesc(char* [], int);

Main

Código
  1. validarVectorDesc(des, TAM_DES);

Funcion Codificada

Código
  1. void validarVectorDesc(char *desc[TAM], int LS)
  2. {
  3. do
  4.        puts("Ingrese descripcion de articulo: ");
  5.        gets(*desc);
  6. while(strlen(*desc) < LS);
  7. }

Siento tener un problema en la lógica pero no logro descifrar cual.

Desde ya muchas gracias!


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: Vector de cadena de caracteres
« Respuesta #1 en: 6 Agosto 2019, 06:06 am »

Entiendo que lo que quieres hacer es un vector de cadenas de caracteres. Entonces como una cadena de caracteres ya es un vector, pues necesitas un vector de vectores. Un vector de vectores es lo mismo que una matriz.

Código
  1. #include <stdio.h>
  2.  
  3. #define MAX_ARTICULOS 4
  4. #define MAX_SIZE 100
  5.  
  6. int main(){
  7.    char descripciones[MAX_ARTICULOS][MAX_SIZE];
  8.  
  9.    for(size_t i = 0; i < MAX_ARTICULOS; ++i){
  10.        printf("Introduce la descripcion del articulo %d: ", i+1);
  11.        fgets(descripciones[i], MAX_SIZE, stdin);
  12.    }
  13.  
  14.    for(size_t i = 0; i < MAX_ARTICULOS; ++i)
  15.        printf("Descripcion %d: %s", i+1, descripciones[i]);
  16. }

Ahí tienes un ejemplo de cómo trabajar con vectores de cadenas. Piensa que cada línea es una cadena (una frase) y cada columna es un caracter.
Puedes probar ese pequeño código para que veas cómo funciona o intentar hacer algún cambio para entender el funcionamiento. También puedes por ejemplo pedir el número de artículos a tratar y si es menor que <MAX_ARTICULOS> usarlo como condición del bucle.


En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Re: Vector de cadena de caracteres
« Respuesta #2 en: 13 Agosto 2019, 21:59 pm »

Muchas gracias!

Funciono perfecto y lo explicaste de manera excepcional.

Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
cadena de caracteres
Programación C/C++
Ander123 1 2,558 Último mensaje 6 Septiembre 2012, 14:15 pm
por avesudra
[C] [?] Problema con vector de caracteres
Programación C/C++
alt_369 2 2,194 Último mensaje 13 Enero 2013, 23:30 pm
por alt_369
No guarda la cadena dentro del vector
Programación C/C++
7emiliosk8 9 3,083 Último mensaje 10 Febrero 2017, 16:35 pm
por dato000
cadena de caracteres
Programación C/C++
brayan 5 2,813 Último mensaje 27 Abril 2017, 18:41 pm
por Fedex15
Cadena de caracteres en C
Programación C/C++
Jurott1 8 3,319 Último mensaje 2 Mayo 2017, 01:33 am
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines