codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <iostream> //#include <exception> #include <new> // std::bad_alloc #include <windows.h> using namespace std; struct Alumnos { char nombre[15]; char apellido[15], estado; int dni; float notas[3], promedio; }; //agenda para el profesor struct Agenda { char nombre[15]; char apellido [15]; char materia[50]; //alumnos registro[]; <-Esto esta mal. Debes indicar siempre un tamaƱo si no lo haces de forma dinamica. }; int main () { Agenda *pAgenda = NULL; //Eso declara el puntero int N = 2; // N lo pides aqui. Yo lo puse 2 solo para probar try { //control de errores pAgenda = new Agenda[N]; } catch ( std::bad_alloc& ba ) { //si hay un error obtenemos el error cout << "Imposible asignar espacio. Error: " << ba.what() << endl; //avisamos el error exit ( -1 ); // salimos con error } //si pasamos de aqui ya tenemos la memoria asignada //probamos guardar cosas strcpy(pAgenda[0].nombre, "Charlie"); strcpy(pAgenda[1].nombre, "Pepe"); //y probamos imprimir cout << pAgenda[0].nombre << endl; cout << pAgenda[1].nombre << endl; delete[] pAgenda; // muy importante para no haber fugas de memoria pAgenda = NULL; // Buena practica es establecer el puntero a nulo para que no apunte a la direccion ninguna para no cometer errores. Es opcional cin.ignore(); return 0; }
Private
[
?
]
Run code
Submit