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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  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,291 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,350 Último mensaje 6 Septiembre 2012, 14:15 pm
por avesudra
[C] [?] Problema con vector de caracteres
Programación C/C++
alt_369 2 1,998 Último mensaje 13 Enero 2013, 23:30 pm
por alt_369
No guarda la cadena dentro del vector
Programación C/C++
7emiliosk8 9 2,766 Último mensaje 10 Febrero 2017, 16:35 pm
por dato000
cadena de caracteres
Programación C/C++
brayan 5 2,493 Último mensaje 27 Abril 2017, 18:41 pm
por Fedex15
Cadena de caracteres en C
Programación C/C++
Jurott1 8 3,006 Último mensaje 2 Mayo 2017, 01:33 am
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines