GRY-Online.pl --> Archiwum Forum

C++ prosba o pomoc

28.09.2004
16:15
[1]

Vasago [ spamer ]

C++ prosba o pomoc

#include <fstream.h>
#include <string.h>
#include <iostream>

char string[30];
char string1[30];
char string2[30];
void text()

std::cout <<"Reading from a file\n";
string2="Ala ma kota";
strncpy(string,string2,29);


void manual()

std::cout << "Enter data\n";
cin.get(string1,29);
strncpy(string,string1,29);

int main()

using std::cout;
using std::cin;
bool exit = false;
int choice;
cout<< "********** menu **********\n";
cout << "[1] Read from a file\n";
cout << "[2] Enter data from a keyboard\n";
cout << "[3] Exit program\n";
cin >> choice;
for( ; ; )


switch(choice)

case 1:
text();
break;
case 2:
manual();
break;
case 3:
exit=true;
break;
default:
cout << "Wrong number. Choose once again\n";
break;

cout<< string << "\n";

return 0;


Chodzi mi o to zeby fukcja text kopiowala lancuch string1(docelowo ma pochodzic z pliku) do lancucha string lub zeby fukcja manual kopiowala lancuch string2(wpisany z klawiatury) do lancucha string. W zaleznosci od wyboru lancuch string bylby przekazywany do fukncji mainZ zawartoscia string1 lub string2) Niesttey kompilator wyrzuca blad
"error C2440: '=' : cannot convert from 'char [12]' to 'char [30]'
There is no context in which this conversion is possible
Error executing cl.exe."
Rozumiem ze nie zgadzaja sie wielkosci tablic,no ale przeciez musze jakos zadeklarowac ten docelowy lancuch

PS
Czy ktos ma moze listing dzialajacego programu do liczenia wielomianow albo do liczenia rownan(tu jako dane wejsciowe musi pojawic sie pelne rownanie z wykorzystaniem znakow +, -, /, *, ), ( (czyli np (654+12)*72/11 i komp ma to policzyc)).

28.09.2004
16:26
[2]

Swidrygajłow [ ]

typy sie nei zgadzają, nie możesz p[rzypisać operatorem = typu char[12] do char[30]
muisz uzyc funckji strcpy(string1,"ala ma kota") czy jakoś tam, nie pamietam parametrow

28.09.2004
16:33
[3]

Vasago [ spamer ]

Dzieki,juz dziala.

© 2000-2025 GRY-OnLine S.A.