dejo la solucion al 3
#include <iostream>
#include <fstream>
using namespace std;
string cadena;
int main(int argc, const char * argv[])
{
ifstream leer("ejemplo.txt");
while(!leer.eof()) {
leer >> cadena;
cout << cadena << endl;
}
leer.close();
return 0;
}
para que vuestro código sea más compatible tendríais que poner otro include cuando useis strings #include <string> quizas con tu compilador lo compila pero con el g++ has de poner el include, y si el codigo a de ser de open source o se ha de hacer público es mejor que sea compatible al 99%
PD:Ya sume los puntos