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


 


Tema destacado: Vuelve Concurso Programación Abril Negro 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Asignar a un array, la mitad o una parte de otro array
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Asignar a un array, la mitad o una parte de otro array  (Leído 651 veces)
etcheverrypablol

Desconectado Desconectado

Mensajes: 37


¡Hoy mejor que ayer, mañana mejor que hoy!


Ver Perfil
Asignar a un array, la mitad o una parte de otro array
« en: 25 Marzo 2017, 15:36 »

Hola chicos, tengo esa duda. Ejemplo:

Si tenemos un array a[0...n] y quiero asignar la mitad del mismo en un array b[0..n/2], ¿existe una función que lo haga, o tengo que crearme una función por mi cuenta con un ciclo?


En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.477



Ver Perfil
Re: Asignar a un array, la mitad o una parte de otro array
« Respuesta #1 en: 25 Marzo 2017, 15:58 »

Puedes usar memcpy. Hace justamente lo que pides.

Ejemplo:
Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main() {
  5.    int array_origen[8] = {1, 2, 3, 4, 5, 6, 7, 8};
  6.    int array_destino[4] = {0};
  7.  
  8.    for(int i = 0; i < 4; ++i)
  9.        printf("array_destino[%i] = %i\n", i, array_destino[i]);
  10.  
  11.    puts("\nCopia del array\n");
  12.    memcpy(array_destino, array_origen, sizeof(int) * 4);
  13.  
  14.    for(int i = 0; i < 4; ++i)
  15.        printf("array_destino[%i] = %i\n", i, array_destino[i]);
  16. }

Resultado:
Citar
array_destino[0] = 0
array_destino[1] = 0
array_destino[2] = 0
array_destino[3] = 0

Copia del array

array_destino[0] = 1
array_destino[1] = 2
array_destino[2] = 3
array_destino[3] = 4


En línea

while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}
etcheverrypablol

Desconectado Desconectado

Mensajes: 37


¡Hoy mejor que ayer, mañana mejor que hoy!


Ver Perfil
Re: Asignar a un array, la mitad o una parte de otro array
« Respuesta #2 en: 25 Marzo 2017, 16:05 »

Muy bien!, eso es algo de lo que estaba buscando. Desde ya muy agradecido :-)
Ahora bien, si quiero asignarle la segunda mitad del array o una parte que esté en el medio especificando mediante dos índices, ¿hay alguna función para ello?

En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines