hola lista, tengo el siguiente problema<br clear="all"><br><div><div>**</div><div> * Programa para asignar memoria para una matriz</div><div> */</div><div><br></div><div>#include <stdio.h></div><div>#include <stdlib.h></div>
<div><br></div><div>void solicitar(float **mat, const int m, const int n);</div><div>void inicializa(float **mat, const int m, const int n);</div><div>void imprime(float **mat, const int m, const int n);</div><div><br></div>
<div>int main(int argc, const char *argv[]){</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">       </span>float **matriz;</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>const int m = 3;</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>const int n = 4;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">    </span>solicitar(matriz, m, n);</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>inicializa(matriz, m, n);</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>imprime(matriz, m, n);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">      </span>return 0;</div><div>}</div><div>//solicita memoria para la matriz</div>
<div>void solicitar(float **mat, const int m, const int n){</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>int i;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">      </span>mat=(float**)malloc(m*sizeof(float*));</div>
<div><br></div><div><span class="Apple-tab-span" style="white-space:pre">     </span>for (i = 0; i < m; i++) </div><div><span class="Apple-tab-span" style="white-space:pre">          </span>mat[i]=(float*)malloc(n*sizeof(float));</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span></div><div>}</div><div><br></div><div>//inicializa la matriz a ceros</div><div>void inicializa(float **mat, const int m, const int n){</div><div><br></div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>int i, j;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">   </span>for (i = 0; i < m; i++) {</div><div><span class="Apple-tab-span" style="white-space:pre">         </span>for (j = 0; j < n; j++) {</div>
<div><span class="Apple-tab-span" style="white-space:pre">                      </span>mat[i][j] = 0.0;</div><div><span class="Apple-tab-span" style="white-space:pre">             </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>}</div>
<div>}</div><div><br></div><div>//imprime la matriz</div><div>void imprime(float **mat, const int m, const int n){</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">       </span>int i, j;</div><div>
<br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>for (i = 0; i < m; i++) {</div><div><span class="Apple-tab-span" style="white-space:pre">         </span>for (j = 0; j < n; j++) {</div><div><span class="Apple-tab-span" style="white-space:pre">                 </span>printf("matriz[%d][%d]=%f\n", i, j, mat[i][j]);</div>
<div><span class="Apple-tab-span" style="white-space:pre">              </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>}</div><div>}</div><div><br></div><div>al compilar me sale segmentation fault, en el debbuger truena en la inicialización pero no sé por qué. Cuando lo hago sin funciones, es decir, todo secuencial en el main me realiza todo sin problemas, alguien que me expilque por qué?</div>
<div>Les agrego los fuentes por si los quieren probra, gracias por sus respuestas</div>-- <br><div>Omar Jonathan Mendoza Bernal</div>"Las cicatrices nos recuerdan que el pasado fue real" Dr. Lecter en Dragón Rojo <br>

</div>