estoy intentando correr mi codigo solo para ir probando lo que tengo, la cosa esta en que se cierra al ejecutar, intente mostrar por pantalla lo que se captura en el vector pero no concuerda con el archivo de prueba..
Me podrian ayudar ? muichas gracias !
Source....................................................................................
Leer.cpp.......................................................................
Leer.h.......................................................................................
Me podrian ayudar ? muichas gracias !
Source....................................................................................
Código [Seleccionar]
#include "leer.h"
#include <iostream>
using namespace std;
void main()
{
Leer L;
char contenido[1000];
*contenido=L.cargar();
cout<<L.numeros(contenido);
system("pause");
}
Leer.cpp.......................................................................
Código [Seleccionar]
#include "leer.h"
#include <iostream>
#include <fstream>
using namespace std;
char Leer :: cargar()//cargando el archivo
{
cout << "Arrastre a la pantalla el archivo a analizar" << endl;
cin >> archivo;
system("cls");
ifstream fin(archivo);
if (!fin.fail())
{
int i =0;
while(!fin.eof())
{
fin>>contenido[i];
i++;
}
}
else
{
cout<<"Error al abrir archivo"<<endl;
system ("pause");
}
return *contenido;
}
int Leer :: numeros(char contenido[1000])//determinamos si son numeros
{
for (int i=0;i<1000;i++)
{
if (isdigit(contenido[i]))
{
cnum++;
}
}
return(cnum);
}
int Leer :: palabras(char contenido[1000])//determinando si son palabras
{
for (int i=0;i<sizeof(contenido);i++)
{
if (isspace(contenido[i]))
{
cpalabra++;
}
}
return(cpalabra);
}
int Leer :: letras(char contenido[1000])//determinamos si es letra
{
for (int i=0;i<sizeof(contenido);i++)
{
if (islower(contenido[i])||isupper(contenido[i]))
{
calpha++;
}
}
return(calpha);
}
int Leer :: cespecial(char contenido [1000])//caracteres especiales, puntos comas etc
{
for (int i=0;i<sizeof(contenido);i++)
{
if (!isalpha(contenido[i]))
{
cother++;
if (contenido[i] == ',')
{
ccoma++;
}
if (contenido[i] == '.')
{
cpunto++;
}
if (contenido[i] == ':')
{
cdospuntos++;
}
if (contenido[i] == ';')
{
cpuntoycoma++;
}
}
}
return(cother,ccoma,cpunto,cdospuntos,cpuntoycoma);
}
void Leer :: mostrar()//mostramos en pantalla todos los datos requeridos (esta asi de manera temporal)
{
cout << "numero de comas es :" << ccoma << endl;
cout << "numero de punto es :" << cpunto << endl;
cout << "numero de los dos puntos :" << cdospuntos << endl;
cout << "numero de punto y coma es :" << cpuntoycoma << endl;
cout << "numero de caracteres con espacios en blacos es :" << cpalabra+cnum + cother + calpha-1 << endl;
cout << "la ubicacion del archivo es :" << archivo << endl;
system("pause");
}
Leer.h.......................................................................................
Código [Seleccionar]
#ifndef _LEER_H __LEER_H
#define _LEER_H
#include <iostream>
#include <fstream>
#include <cctype>
using namespace std;
// Declaración de la clase
typedef class Leer
{
//Atributos
private:
int cpalabra;
int cnum;
int cother;
int cchar;
int ccoma;
int cpunto;
int cpuntoycoma;
int cdospuntos;
int calpha;
char next;
char archivo[1000];
//Métodos
public:
char cargar();
int numeros(char contenido[]);
int palabras(char contenido[]);
int cespecial(char contenido[]);
int letras(char contenido[]);
void mostrar();
char contenido[1000];
}Tleer;
#endif /*__LEER_H */