• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Fukncja wyśiwetlająca określoną liczbę znaków

0 głosów
845 wizyt
pytanie zadane 19 maja 2016 w C i C++ przez sebask08 Użytkownik (510 p.)
Witam,

Poszukuje funkcji wyświetlającej określone znaki z tablicy string tzn chodzi mi o to zeby wyświetlało np. od 5 do 15 znaku. Czy istnieje taka funkcja czy muszę to robić pętlą ?
komentarz 19 maja 2016 przez sebask08 Użytkownik (510 p.)
edycja 19 maja 2016 przez sebask08
Znalazłem!!!! Chodzi o funkcje substr(x, y) gdzie x cyfrą od ktorego znaku ma wyświelić a y ile znaków ma wyswietlic. Stosuje się to tak:

string Opis = "Ala ma Kota";

cout<<Opis.substr(0, 3)<<endl; //wyswietli Ala

1 odpowiedź

+2 głosów
odpowiedź 19 maja 2016 przez Radfler VIP (101,030 p.)
edycja 19 maja 2016 przez Radfler
 
Najlepsza

Możesz użyć funkcji basic_string::substr:

string text{"Ala ma uroczego kotka."};

cout << text.substr(7, 8)  << '\n'; // wyświetli "uroczego"

Pierwszym argumentem funkcji jest pozycja, od której zaczynamy brać znaki, a drugi określa ilość znaków. Minusem tego rozwiązania jest to, że funkcja tworzy nowy obiekt typu std::string, więc lepszym (ale mniej intuicyjnym) rozwiązaniem będzie to:

string text{"Ala ma uroczego kotka."};

copy_n(text.begin() + 7, 8, ostream_iterator<char>{cout}); // wyświetli "uroczego"

Widzimy tutaj wywołanie funkcji std::copy_n z następującymi argumentami:

  1. Iterator do znaku, od którego zaczynamy wypisywanie,
  2. Ilość znaków do wypisania,
  3. Iterator wyjścia na strumień (tu na std::cout).
1
komentarz 19 maja 2016 przez sebask08 Użytkownik (510 p.)
Dzięki, za wyjaśnienie drugiej opcji, pierwszą już znalażłem czekając na pomoc, ale chyba użyje tej pierwszej z tej racji ze pisze kod na projekt z kilkoma osobami i też muszą sie w tym roczytać, ale będe miał na uwadze tą drugą opcje.

Podobne pytania

0 głosów
0 odpowiedzi 372 wizyt
pytanie zadane 16 grudnia 2016 w C i C++ przez programmero Bywalec (2,420 p.)
0 głosów
1 odpowiedź 947 wizyt
pytanie zadane 12 sierpnia 2018 w C i C++ przez VegaOrionis Początkujący (350 p.)
0 głosów
1 odpowiedź 238 wizyt
pytanie zadane 10 czerwca 2017 w C i C++ przez Huberti Gaduła (4,500 p.)

93,631 zapytań

142,553 odpowiedzi

323,056 komentarzy

63,139 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2900p. - dia-Chann
  2. 2870p. - DziarnowskiJ
  3. 2827p. - Łukasz Piwowar
  4. 2783p. - raydeal
  5. 2758p. - Adrian Wieprzkowicz
  6. 2713p. - rucin93
  7. 2579p. - Łukasz Eckert
  8. 2459p. - CC PL
  9. 2184p. - Maurycy W
  10. 2082p. - Michal Drewniak
  11. 1885p. - robwarsz
  12. 1811p. - rafalszastok
  13. 1600p. - Rafał Trójniak
  14. 1588p. - Tomasz Bielak
  15. 1494p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...