5.13.

//: C04:Exercise14.cpp
#include <fstream>
#include <iostream>
#include <sstream>
#include "../require.h"
using namespace std;

#define d(a) cout << #a " ==\t" << a << endl;

void tellPointers(fstream& s) {
  d(s.tellp());
  d(s.tellg());
  cout << endl;
}
void tellPointers(stringstream& s) {
  d(s.tellp());
  d(s.tellg());
  cout << endl;
}
int main() {
  fstream in("Exercise14.cpp");
  assure(in, "Exercise14.cpp");
  in.seekg(10);
  tellPointers(in);
  in.seekp(20);
  tellPointers(in);
  stringstream memStream("Here is a sentence.");
  memStream.seekg(10);
  tellPointers(memStream);
  memStream.seekp(5);
  tellPointers(memStream);
} ///:~

Listado 5.29. C04/Exercise14.cpp


//: C04:Exercise15.txt&#13;
Australia&#13;
5E56,7667230284,Langler,Tyson,31.2147,0.00042117361&#13;
2B97,7586701,Oneill,Zeke,553.429,0.0074673053156065&#13;
4D75,7907252710,Nickerson,Kelly,761.612,0.010276276&#13;
9F2,6882945012,Hartenbach,Neil,47.9637,0.0006471644&#13;
Austria&#13;
480F,7187262472,Oneill,Dee,264.012,0.00356226040013&#13;
1B65,4754732628,Haney,Kim,7.33843,0.000099015948475&#13;
DA1,1954960784,Pascente,Lester,56.5452,0.0007629529&#13;
3F18,1839715659,Elsea,Chelsy,801.901,0.010819887645&#13;
Belgium&#13;
BDF,5993489554,Oneill,Meredith,283.404,0.0038239127&#13;
5AC6,6612945602,Parisienne,Biff,557.74,0.0075254727&#13;
6AD,6477082,Pennington,Lizanne,31.0807,0.0004193544&#13;
4D0E,7861652688,Sisca,Francis,704.751,0.00950906238&#13;
Bahamas&#13;
37D8,6837424208,Parisienne,Samson,396.104,0.0053445&#13;
5E98,6384069,Willis,Pam,90.4257,0.00122009564059246&#13;
1462,1288616408,Stover,Hazal,583.939,0.007878970561&#13;
5FF3,8028775718,Stromstedt,Bunk,39.8712,0.000537974&#13;
1095,3737212,Stover,Denny,3.05387,0.000041205248883&#13;
7428,2019381883,Parisienne,Shane,363.272,0.00490155&#13;
///:~&#13;

Listado 5.30. C04/Exercise15.txt