Dev - C++ - quien me explica este codigo paso a paso porfavor .

 
Vista:
Imágen de perfil de cristofer
Val: 4
Ha disminuido su posición en 5 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

quien me explica este codigo paso a paso porfavor .

Publicado por cristofer (4 intervenciones) el 15/06/2017 07:45:24
porfavor ,expliquenme como funciona este programa , por que declara en el programa fuera del struct, fuera del void o fuera del int main() , por que utliza el void , y cual es la logica de este programa porfavor , por que o para que esta usando el sizeof , se que te da el numero de bytes pero eso para que sirve en el programa se los agradeceria bastante .

#include <iostream>
#include <fstream>
#include <conio.h>
#include <stdlib.h>
#include <iomanip>
using namespace std;
//Estructura del curso
struct Curso{
char cod_curso[3];
char nom_curso[30];
char costo[30];
};
//variable de Curso
fstream datos_Curso;
Curso inst_curso;
long nCursos;
long t_RegCurso=sizeof(inst_curso);

//funciones de curso
void apertura_Curso();
void ingreso_Curso();
//Funcion apertura archivo curso
void apertura_Curso(){
datos_Curso.open("C:\\data\\Curso.txt",ios::in|ios::out);
if(datos_Curso.bad()){
cout<<"\tError no se puede abrir el archivo";
cin.get();
exit(1);
}
datos_Curso.seekg(0,ios::end);//Desplaza el puntero al final del archivo
nCursos=datos_Curso.tellg()/t_RegCurso;
}
//Funcion ingresa nuevo curso
void ingreso_Curso(){
char OP='s';
int cuenta=0;
do{
cuenta++;
system("CLS");
apertura_Curso();
cout<<"\n\tIngreso de cursos";
cout<<"\n\t-------------------------\n\n";
cout<<"\n\tcodigo:";cin>>inst_curso.cod_curso;
cin.ignore();
cout<<"\tNombre:";
cin.getline(inst_curso.nom_curso,sizeof(inst_curso.nom_curso));
cout<<"\tCosto:";
cin.getline(inst_curso.costo,sizeof(inst_curso.costo));
cout<<"\n\t"<<"("<<cuenta<<")ingreso";
//graba los datos en el archivo
datos_Curso.write((char*)& inst_curso,t_RegCurso);
nCursos++;
cout<<"\n\nDesea continuar (S/N):";
cin>>OP;
datos_Curso.close();
} while(toupper(OP)=='S');
}
int main(){
ingreso_Curso();
return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Sergio Can
Val: 58
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

quien me explica este codigo paso a paso porfavor .

Publicado por Sergio Can (23 intervenciones) el 15/06/2017 09:07:37
1
por que declara en el programa fuera del struct,
Son variables globales
1
por que utliza el void
Porque son funciones que más que nada guardan datos y mandan mensajes, más nunca regresan algún valor, por ende se usa void (vacío).
recuerda que una función de tipo void, no regresa nada.
1
por que o para que esta usando el sizeof
Está parte no me quedo claro, pero veo que para obtener el tamaño en bits de la estructura (puedo estar equivocado)


Sobre la lógica en si:

Librerías

Estructura a usar

Declaración de variables globales

Prototipo de la función
//Void func(int parameters);

Definición de la función
//Void func(int parameters){
// Do something
// }

Abre un archivo (si no se puede, manda error)

Primera funcion

puntero de escritura al final de archivo
//Significa concatenar al archivo los nuevos datos, sin perder lo anterior

Segunda función
Llamar la primera función.
Pide los datos a ingresar(nombre, costo,código)
Los datos de la estructura se escriben en el archivo
Mientras pongan 'S' se seguirán ingresando datos


Main{
Llama la segunda función y. Haz todo lo anterior
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar