Buenas, estoy aprendiendo un poco de C e intento crear una función que me permita cargar un array bidimensional y modificare con repercusión en el main(), el problema es que, he intentado usar punteros, peno no se muy bien como se usan, ¿alguien me puede aclarar como solucionar el problema?¿que hago?
Código c:
Ver originalvoid salida(int *p); // Declaro la funcion
main()
{
int a[2][2]= {{2, 4},{1,3}}; // Cargo un array bidimensional.
int *p; // Cargo un puntero
p=&a; /* ERROR */ // Intento direccionar el muntero a el array
salida(p); // Llamo la funcion salida
printf("%d", a
[0][0]); // Intento mostrar el primer elemento del array 2D }
void salida(int *p)
{
(*p)[0][0] = 8; /* ERROR */ // Intento cambiar el primer elemento del array
}
Este seria justo hasta el fallo
Código c:
Ver original#include <stdio.h>
main()
{
int n[5][6];
int **p;
/* ¿ */ p=&n; /* ? ¿esto no me va como seria? */
}
/*
6 E:\Documents and Settings\Administrator\Desktop\borrame.cpp cannot convert `int (*)[5][6]' to `int**' in assignment
*/
Gracias por adelantado.