Autor Zpráva
c++
Profil *
Dobry den.
Prosim poradte mi Mam takyto problem:
v c++ ak dam ako promennu int:
int prom; cin >> prom a ak dam nieco ine ako cislo tak mi vypne program
a ja mam toto:
using namespace std; int main() {
char promenna[30]; cin >> promenna; cout << "Napisal si" << promenna ;
getchar();
return 0; }
a ak dam ze abcd tak mi to vypne program ako by to bol typ premennej int...:(
Dakujem za kazdu radu.
WanTo
Profil
V čem je vlastně problém?

Tento program mi chodí krásně:

#include <iostream>

using namespace std;

int main(int argc, char ** argv) {
char str[20];
cout << "Napiště něco, já to vytisknu: ";
cin >> str;
cout << "Tak tady to máte: " << str << endl;

int num;
cout << "Teďka mi napište číslo: ";
cin >> num;
cout << "Vaše číslo je " << num << endl;

return 0;
}


Zkompilované pomocí gcc 4.0. Když zadám řetězec delší než 20 znaků, tak přeteče buffer a program se chová hodně podivně. Když místo čísla zadám nějaký nesmysl, vyhodí to nějaké velké číslo, nevím co je to zač.
c++
Profil *
ano sice to funguje ale ak by som chcel strng premenne ahoj priradit hodnotu tak to takto nejde:

char ahoj[30];
ahoj = "lala";



prosim poradte kde je chyba,dakujem.
P.S.:kompilator error:"Incompatible types in assigment of 'const char[5] ' to 'const char[30]' "
compilator: dev-c++
michaelkiller
Profil
Co tak skusit ->
strcpy(ahoj,"lala")

?
Toto téma je uzamčeno. Odpověď nelze zaslat.