Advertisement
fcamuso

C++ 20 - lezione 5

Oct 8th, 2022
1,302
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.83 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <iomanip>
  4. #include <string>
  5. #include <format>
  6. #include <string_view>
  7.  
  8. using namespace std;
  9.  
  10. void f1(const char* s) {}
  11.  
  12. void f2(string_view s) {}
  13.  
  14. void f3 (const string &s) {}
  15.  
  16.  
  17. int main()
  18. {
  19.     //ifstream leggi("catalogo.txt");
  20.  
  21.     //int codice = 0;
  22.     //string titolo = "";
  23.     //double costo = 0;
  24.  
  25.     //if (leggi)
  26.  //     while (leggi >> codice >> quoted(titolo) >> costo)
  27.     //    cout << format("Codice: {} - Titolo: {} - Costo: {}\n", codice, titolo, costo);
  28.     //  else
  29.     //  cout << "errore apertura file\n";
  30.  
  31.     //leggi.close(); leggi.clear();
  32.  
  33.     //struct String_View
  34.     //{
  35.     //  char *p = ...
  36.     //  int length = ...
  37.     //};
  38.  
  39.     string s =
  40.       "Quel ramo de lago di Como, che volge a mezzogiorno, tra due catene "
  41.       "non interrotte di monti, tutto a seni e a golfi, a seconda dello sporgere"
  42.       "e del rientrare di quelli, vien, quasi a un tratto a ristringersi, e a prender"
  43.       "corso e figura di fiume, tra un promontorio a destra, e un’ampia costiera "
  44.       "dall’altra parte; e il ponte, che ivi congiunge le due rive, par che renda "
  45.       "ancor più sensibile all’occhio questa trasformazione, e segni il punto in cui"
  46.       "il lago cessa, e l’Adda ricomincia, per ripigliar poi il nome di lago dove le rive"
  47.       ", allontanandosi di nuovo, lascian l’acqua distendersi e rallentarsi in nuovi golfi"
  48.       "e in nuovi seni.";
  49.  
  50.     string_view sv = s;
  51.     std::cout << sv.substr(21, 100)[0] << endl;
  52.     std::cout << sv.substr(21, 100)[sv.substr(21, 100).length() - 1] << endl;
  53.  
  54.  
  55.     if (sv.substr(20, 100).find_last_of("tratto") > 45)
  56.         std::cout << "Verificato\n";
  57.  
  58.     //sv[0] = 'Z'; //no read only
  59.     sv = "ciao";
  60.  
  61.     if (s == sv) std::cout << "uguali \n";
  62.     //string_view s2 = sv +  s;
  63.  
  64.     const char* stringaC = "stringa alla C";
  65.     std::cout << string_view(stringaC).length();
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72. }
  73.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement