Guest User

govno

a guest
Dec 12th, 2014
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. #include <fstream>
  2. #include <string>
  3.  
  4. struct Yoba
  5. {
  6.     int value;
  7.     Yoba *next;
  8.  
  9.     Yoba(int v = 0, Yoba *n = 0)
  10.     {
  11.         value = v;
  12.         next = n;
  13.     }
  14. };
  15.  
  16. static Yoba *createYoba(int value, Yoba *previous = 0)
  17. {
  18.     Yoba *y = new Yoba(value);
  19.     if (previous)
  20.         previous.next = y;
  21.     return y;
  22. }
  23.  
  24. int main(int, char **)
  25. {
  26.     Yoba *first = new Yoba;
  27.     Yoba *y = createYoba(1, first);
  28.     for (int i = 2; i <= 5; ++i)
  29.         createYoba(i, y);
  30.     std::string s;
  31.     y = first;
  32.     while (y) {
  33.         s += std::to_string(y.value);
  34.         s += "\n";
  35.         Yoba *previous = y;
  36.         y = y.next;
  37.         delete previous;
  38.     }
  39.     //Writing
  40.     std::ofstream out("file.txt");
  41.     out << s;
  42.     out.close;
  43.     s.clear();
  44.     first = 0;
  45.     y = 0;
  46.     //Reading
  47.     std::ifstream in("file.txt");
  48.     in >> s;
  49.     int i = 0;
  50.     std::string ss;
  51.     while (i < s.size()) {
  52.         if ('\n' == s[i]) {
  53.             y = createYoba(std::stoi(ss), y);
  54.             if (!first)
  55.                 first = y;
  56.             ss.clear();
  57.         } else {
  58.             ss += s[i];
  59.     }
  60.     }
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment