Foros del Web » Programación para mayores de 30 ;) » C/C++ »

ayuda por favor

Estas en el tema de ayuda por favor en el foro de C/C++ en Foros del Web. hola este programa en C++ es de un compilador y no me llega a ejecutar y compilar sera por q me falta el main.cpp si ...
  #1 (permalink)  
Antiguo 09/06/2010, 15:41
Avatar de sanctusbellicosus91  
Fecha de Ingreso: marzo-2010
Mensajes: 23
Antigüedad: 14 años, 1 mes
Puntos: 0
ayuda por favor

hola este programa en C++ es de un compilador y no me llega a ejecutar y compilar sera por q me falta el main.cpp si me puede decir como es

__________________________________________________ _______


#ifndef TOKEN_H
#define TOKEN_H


class Token
{
public:
Token(int tipo,int atributo);
int Atributo;
int Tipo;
protected:
private:
};

#endif
_______________________________

#ifndef CPARSER_H
#define CPARSER_H
#include "ReadBuffer.h"
#include "token.h"
#include <map>
#include <list>
#include <vector>
#include <cctype>

class Cparser {
public:
Cparser();
~Cparser();
bool openfile(string filename);
void parse() throw (const char*);
int d(int q, char c);
list<Token> L; //L es la lista de Tokens ¡duh!
vector<string> TablaDeSimbolos;
protected:
private:
string tb;
unsigned int scount;
ReadBuffer b;
map<string,unsigned int> st;
______________________________



#ifndef READBUFFER_H
#define READBUFFER_H
#include<string>
#include<fstream>
using namespace std;

class ReadBuffer {
public:
ReadBuffer(unsigned int bufferlenght = 2048);
ReadBuffer(string filename, unsigned int bufferlenght = 2048);
bool openfile(string filename);
bool isopen();
void closefile();
bool eof();
char nextchr();
virtual ~ReadBuffer();
private:
bool neareof; /
unsigned int howfariseof;
bool iseof;
void InitiateBuffer(unsigned int bufferlenght);
unsigned int pos;
unsigned int bufflen;
char * buffer;
ifstream inputf;
};

#endif


__________



#include "ReadBuffer.h"

ReadBuffer::ReadBuffer(unsigned int bufferlenght) {
InitiateBuffer(bufferlenght);
iseof = true;
}

ReadBuffer::ReadBuffer(string filename, unsigned int bufferlenght) {
InitiateBuffer(bufferlenght);
openfile(filename);
}

bool ReadBuffer::openfile(string filename) {
inputf.open(filename.c_str());
iseof = false;
neareof = false;
return !(!inputf);
}


bool ReadBuffer::isopen() {
return (inputf.is_open());
}

void ReadBuffer::closefile() {
if (isopen()) inputf.close();
}

char ReadBuffer::nextchr() {
char r;
unsigned int k;
if (eof()) return '\0';
if (pos % bufflen == 0) {
inputf.read(&buffer[pos], bufflen);
k = (unsigned int) inputf.gcount();
if (k < bufflen) {
neareof = true;
howfariseof = k;
}
}
if (neareof && !howfariseof--) {
iseof = true;
return '\0';
}
r = buffer[pos];
pos = (pos + 1) % (2 * bufflen);
return r;
}

bool ReadBuffer::eof() {
if (!isopen()) return true;
return iseof;
}

void ReadBuffer::InitiateBuffer(unsigned int bufferlenght) {
if (bufferlenght < 1) bufferlenght = 2048;
bufflen = bufferlenght;
buffer = new char[bufflen * 2];
pos = 0;
}

ReadBuffer::~ReadBuffer() {
closefile();
delete [] buffer;
}




______________________

Etiquetas: favor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:12.