Problem se stringem – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Problem se stringem – C / C++ – Fórum – Programujte.comProblem se stringem – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
ellke
~ Anonymní uživatel
13 příspěvků
7. 3. 2015   #1
-
0
-

Zdravím všechny,

Mám menší problém se kterým si nevím rady. 

 Kód:

#include <iostream>
#include <string.h>
using namespace std;


int main()
{
//Uživatelovo rozhodnutí­ 1/2
string znak[5];


cout<<"Zadejte prvni znak"<<endl;
cin>>znak[1];
cin>>znak[2];
cin>>znak[3];
cin>>znak[4];
cin>>znak[5];
cout<<endl;



for (int x=1; x<=5;x++)
{
cout<<znak[x]<<endl;
}
	
	}

Snažím se aby mi cyklus vypsal to co jsem já zapsal do cinu znak[1] -> znak[5], jenomže jak to dorazí do znak[4] napíše mi to program přestal pracovat. Proto se chci zeptat jestli je chyba v mém programování nebo někde jinde.

Programuji v prostředí devc++ (windwos 8.1)

Děkuji předem za odpovědi.

Nahlásit jako SPAM
IP: 109.81.209.–
Reklama
Reklama
vitamin+8
Grafoman
7. 3. 2015   #2
-
0
-

#1 ellke
Pole sa indexuje od 0, nie od 1.

Nahlásit jako SPAM
IP: 95.105.229.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
ellke
~ Anonymní uživatel
13 příspěvků
7. 3. 2015   #3
-
0
-

Děkuji moc, už to běží jak má.

Chyby začátečníka   .

Zde je řešení :

#include <iostream>
#include <string.h>
using namespace std;


int main()
{

string znak[4];


cout<<"Zadejte prvni znak"<<endl;
cin>>znak[0];
cin>>znak[1];
cin>>znak[2];
cin>>znak[3];
cin>>znak[4];
cout<<endl;



for (int x=0; x<=4;x++)
{
cout<<znak[x]<<endl;
}
	
Nahlásit jako SPAM
IP: 109.81.209.–
vitamin+8
Grafoman
7. 3. 2015   #4
-
0
-

#3 ellke
Aj tak to mas zle (daklaracia ma mat velkost 5).

Lepsie by sa to dalo napisat takoto:

#include <iostream>
#include <string>
using namespace std;

int main(){
    enum{N = 5};
    string znak[N];

    cout << "Zadejte prvni znak" << endl;

    for(int i = 0; i < N; ++i){
        cin >> znak[i];
    }

    cout << endl;

    for(int i = 0; i < N; ++i){
        cout << znak[i] << endl;
    }

    return 0;
}
Nahlásit jako SPAM
IP: 95.105.229.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
Matěj Andrle+1
Grafoman
7. 3. 2015   #5
-
0
-
Nerozhodně

#1 ellke
Toto se dozvíš naprosto všude, pročež nechápu, k čemu toto téma je. Velikost pole je limitací indexu. Takže index NIKDY nedosáhne stejného čísla, jako je velikost pole. JEDINOU výjimkou je jazyk Lua - tam se pro velký počet neprogramátorů indexuje od 1... Velikost pole 5 - maximální index 4, velikost pole 6 - maximální index 5, ...

Nahlásit jako SPAM
IP: 78.136.183.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 125 hostů

Podobná vlákna

Problém se stringem — založil MiCizek

Práce se stringem — založil Pepa

Práce se stringem — založil Jana

Problém — založil Ma.ty

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý