Documentos de Académico
Documentos de Profesional
Documentos de Cultura
5.0 Introducción
malloc (cantidad_de_memoria);
calloc (número_de_elementos, tamaño_de_cada_elemento);
#include <stdlib.h>
#include <stdio.h>
main()
{
int *p_int;
float *mat;
if ((p_int==NULL)||(mat==NULL))
{
printf ("\nNo hay memoria");
exit(1);
}
mat[0] = 5;
mat[2] = mat[1]*mat[6]/67;
free (p_int);
free(mat);
typedef struct
{
float mat[1000][1000];
int ancho,alto;
} MATRIZ;
struct mat
{
float *datos;
int ancho,alto;
};
return temp;
}
temp------->datos---------->x*x elementos
ancho,alto
a = inic_matriz (3,3);
...
borrar_matriz(a);
}
p->ancho = x;
p->alto = y;
p->datos = (float *)malloc(sizeof(float)*x*y);
}
main()
{
MATRIZ a;
inic_matriz (&a,3,3);
.....
borrar_matriz (&a);
}
5.3.0 Introducción
VECTOR.C
#include<stdio.h>
#include<stdlib.h>
#define VECTOR_C
struct vector
{
float *componentes;
int dimension;
};
#include "vector.h"
if (uno->dimension!=dos->dimension) printf("\nerror");
else
if (uno->dimension!=tres->dimension) printf("\nerror");
else
for(i=0;i<uno->dimension;i++)
*(tres->componentes+i)=*(dos->componentes+i)+
*(uno->componentes+i);
}
VECTOR.H
#ifndef VECTOR_H
#define VECTOR_H
#ifndef VECTOR_C
typedef void *VECTOR;
#endif
VECTOR crear_vector(int);
void borrar_vector(VECTOR);
float leer_componente(VECTOR,int);
void escribir_componente(VECTOR,int,float);
void suma(VECTOR,VECTOR,VECTOR);
#endif
#define PI 3.14159
*(COMP+1) = 10;
#include"stdio.h"
#include"vector.h"
main()
{
VECTOR x,y,z;
int i;
x=crear_vector(3);
y=crear_vector(3);
z=crear_vector(3);
printf ("\n");
for(i=0;i<3;i++)
escribir_componente(x,i,i);
for(i=0;i<3;i++)
escribir_componente(y,i,i+2);
suma(x,y,z);
for(i=0;i<3;i++)
{
printf("\n%f + %f = %f",leer_componente(x,i),
leer_componente(y,i),leer_componente(z,i));
}
borrar_vector (x);
borrar_vector (y);
borrar_vector (z);