Cómo asignar el valor de una matriz a otra matriz en C++
Hay dos maneras de hacer esto.
Para facilitar la explicación, defina dos matrices de números enteros a y b, y asigne el valor de a a b.
int a[4] = {1,2,3,4}, b[4];
1. Recorre la matriz y asigna valores uno por uno.
Definir variable de bucle int i;
for(i = 0; i < 4; i ++)
b[i] = a[i] ;
La función de este programa es recorrer la matriz a y asignar valores a los elementos correspondientes de la matriz b uno por uno.
2. Utilice la función de copia de memoria memcpy para realizar la asignación general.
void *memcpy(void *dst, void *src, size_t size);
La función de esta función es asignar los datos de tamaño de bytes en src a dst.
Al llamar a esta función, debe citar el archivo de encabezado cstring, es decir,
#include
El código para asignar la matriz es
memcpy (b,a,sizeof(a));
Información ampliada:
En lenguaje C, las matrices son tipos de datos construidos. Una matriz se puede descomponer en varios elementos de la matriz, que pueden ser tipos de datos básicos o tipos construidos. Por lo tanto, según el tipo de elementos de la matriz, las matrices se pueden dividir en varias categorías, como matrices numéricas, matrices de caracteres, matrices de punteros y matrices de estructuras.
En cuanto al problema de las matrices de longitud variable (VLA): el estándar C89 original no permitía que aparecieran matrices de longitud variable, pero en el estándar C99 se agregó soporte para VLA, pero la compilación admitida no hay En muchos procesadores, y debido al problema de seguridad del desbordamiento de pila, no mucha gente se atreve a utilizar esta matriz de longitud variable, por lo que se especifica como una función de implementación opcional en el estándar C11.
Matriz de enciclopedia Baidu