int main() { /* printf("Hello!\n"); const char* fileName = "out.txt"; FILE* fp = fopen(fileName, "wb"); int i = 0x4949; char* str = "test"; size_t len = strlen(str); fwrite(&i, sizeof(int), 1, fp); fwrite(str, sizeof(char), len, fp); fclose(fp); fp = fopen(fileName, "rb"); int k = 0; char buf[1024]; bzero(buf, 1024); fread(&k, sizeof(int), 1, fp); printf("%d\n", k); fread(buf, sizeof(char), 1024, fp); printf("%s\n", buf); fclose(fp); */ int stack[MAXSIZE] = {0}; int top = 0; int i = 0; for (i = 0; i < MAXSIZE+1; i++) { mypush(i, stack, &top); mysize(stack, &top); } for (i = 0; i < MAXSIZE+1; i++) { mypop(stack, &top); mysize(stack, &top); } return 0; }
//overridden from Spectrum void RefSpectrum::writeToFile(ofstream& file) { file.write( (char*)this, mysize()-(2*sizeof(string)) ); file.write( seq.c_str(), length ); file << "\n"; //this way can use getline( file, string) for input file.write( mods.c_str(), length ); file << "\n"; file.write( (char*)data.peaks, data.numPeaks*sizeof(PEAK_T) ); }
void RefSpectrum::readFromFile(ifstream &file) { seq.clear(); mods.clear(); delete []data.peaks; file.read( (char*)this, mysize()-(2*sizeof(string)) ); //set type of spectrum getline( file, seq ); getline( file, mods ); data.peaks = new PEAK_T[data.numPeaks]; file.read( (char*)data.peaks, data.numPeaks*sizeof(PEAK_T) ); }