Programación General > C/C++
Re: Arrays
dadevil_g:
Tengo el siguiente codigo:
#include <conio.h>
#include <iostream.h>
int main()
{
char array[4]; //Declaras el array
int i;
clrscr();
for(i=0;i<4;i++)
{
cout<<"Ingresa un numero a la matriz: ";
cin>>array; //Guardas cada valor en una posición del array
}
for(i=4;i>=0;i--) //Vas en reversa
{
cout<<"n"<<array; //Muestras los valores del array, uno por uno
}
getch();
}
Mi problema es que necesito que el usuario sea el que defina el numero de numeros a introducir, como máximo 15, pero no tengo mucha experiencia con los arrays, si alguien me puede ayudar se lo agardecería :hippi:
dadevil_g:
Se me olvidaba que el código me lo pasó el compañero Blag (no hay que olvidar dar los créditos a quien se lo merece) :suerte:
mabrev:
Hola:
Para crear un array de un tamaño definido por el usuario, es necesario jugar con los punteros y la asignación dinámica de memoria. Para ello, en vez de declarar la variable "array" como:
char array[4];
debe declararse como char *array;
Después, una vez que el usuario haya introducido el número de elementos, y lo hayas almacenado en la variable "tam", haces lo siguiente:
array = (char *) malloc(tam*sizeof(char));
Y después ya puedes acceder a los elementos del array de la forma habitual, es decir array[0], array[1]......array[tam-1]
Espero que te sea de ayuda.
Saludos.
dadevil_g:
weno, no es por ofender pero me hablaste en ingles... entendí como hay que declarar el array para dimensionarlo a las necesidades del usuario, pero me fallo cuando utilize el "malloc" me dice que es una funcion no declarada, aparte no se como acceder a los elementos del array... soy muy nuevo para estas cosas disculpa si es algo sencillo pero apenas empiezo con los arrays, si me pudieras explicar como se llaman los arrays, como se accede a ellos o cualquier cosa que me ayude a resolver el programa te lo agradeceria.
:hippi:
Ruben3d:
Hola. Para poder usar la función malloc has de incluir las cabeceras stdlib.h y malloc.h. Para acceder a los elementos del vector se haría así: array[X], donde X es la posición a la que quieres acceder (acuerdate que las posiciones se empiezan a numerar en cero).
Navegación
[#] Página Siguiente
Ir a la versión completa