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

Kopiowanie Stringów nie działa :)

VPS Starter Arubacloud
0 głosów
378 wizyt
pytanie zadane 13 kwietnia 2016 w C i C++ przez veryhotshark Obywatel (1,620 p.)

witam mianowicie napisałem program i chciałem żeby z stringa nazwa przepisało do stringa nazwa2 i nie wiem czemu nie działa wiem ze mozna poprotu napisać nazwa2=nazwa; ale chciałbym wiedzieć dlaczego ten sposób nie działa przepisywanie pojedynczych literek

#include <iostream>

using namespace std;

string nazwa;
string nazwa2;

int main()
{

    cout << "podaj nazwe stringu: " ;
    cin>>nazwa;

    int dlugosc=nazwa.length();

    for(int i=0;i<dlugosc;i++)
    {
       nazwa[i]=nazwa2[i];
    }
    cout<<nazwa2;
    return 0;
}

 

3 odpowiedzi

+1 głos
odpowiedź 13 kwietnia 2016 przez Radfler VIP (101,030 p.)
edycja 13 kwietnia 2016 przez Radfler
nazwa[i]=nazwa2[i];

Powinno być odwrotnie. W końcu kopiujesz znaki z nazwa do nazwa2:

nazwa2[i]+=nazwa[i];
komentarz 13 kwietnia 2016 przez veryhotshark Obywatel (1,620 p.)
a no tak ale głupi błąd dziękuje :D
+1 głos
odpowiedź 13 kwietnia 2016 przez MetGang Nałogowiec (34,360 p.)

Pomijając fakt przepisywania nie do tego co trzeba, to jeszcze przepisujesz string z zaalokowaną pamięcią do tego bez...

nazwa2.push_back(nazwa[i]);
// lub
nazwa2 += nazwa[i];

A jeśli już chcesz z indeksami to najpierw:

nazwa2.resize(dlugosc,0);

 

0 głosów
odpowiedź 13 kwietnia 2016 przez Sedi Stary wyjadacz (10,200 p.)

Najprostsze rozwiązania są najlepsze.

Zamiast tworzyć pętle, napisz:

std::string pierwszy="Ala ma kota";

std::string drugi;

drugi=pierwszy;

std:;cout<<"Drugi wynosi: "<<druga<<'\n';

 

Podobne pytania

0 głosów
1 odpowiedź 553 wizyt
pytanie zadane 12 lutego 2016 w C i C++ przez konrad99 Gaduła (4,090 p.)
0 głosów
1 odpowiedź 170 wizyt
0 głosów
1 odpowiedź 313 wizyt

93,020 zapytań

141,982 odpowiedzi

321,283 komentarzy

62,366 pasjonatów

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

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...