Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z tablica string

Ostatnio zmodyfikowano 2011-08-20 13:45
Autor Wiadomość
zduneq
Temat założony przez niniejszego użytkownika
Problem z tablica string
» 2011-08-20 12:33:23
Jestem poczatkujacym programistą i możliwe ze coś mi umknęło wiec podaje problem:
Program ma wczytywac imiona i nazwiska do tablicy.
C/C++
#include <iostream>
#include <string>
using namespace std;

string wczytywanie( string tablica_wczytywanie[ 10 ], string imie_nazwisko_wczytywanie )
{
    int licznik = 0;
    tablica_wczytywanie[ licznik ] = imie_nazwisko_wczytywanie;
    licznik++;
}

int main()
{
    string imie_nazwisko;
    int tablica[ 10 ];
    int licznik_ludzi;
    cout << "[1] Pokaz liste\n[2]Wprowadz nowych\n";
    int wejscie;
    cin >> wejscie;
    switch( wejscie )
    {
    case 2:
        {
            cout << "Podaj imie i nazwisko: " << endl;
            cin >> imie_nazwisko;
            wczytywanie( tablica[ licznik_ludzi ], imie_nazwisko ); // Tu jest blad :invalid conversion from 'int' to 'std::string*' i : invalid conversion from 'int' to 'std::string*'|
            licznik_ludzi++;
            break;
        case 1:
            cout << "W trakcie Budowy";
            break;
        }
    }
    return 0;
}
P-39506
pekfos
» 2011-08-20 12:37:12
kod nie ma prawa działać bo ciągle piszesz do 0 indeksu.
C/C++
int licznik = 0;
tablica_wczytywanie[ licznik ] = imie_nazwisko_wczytywanie; //zawsze 0
licznik++;
P-39507
SeaMonster131
» 2011-08-20 12:56:01
Błąd występuje, ponieważ masz tablicę
int
:
int tablica[ 10 ];

A ta funkcja:
string wczytywanie( string tablica_wczytywanie[ 10 ], string imie_nazwisko_wczytywanie )

Przyjmuje jako 1. argument string*, a nie int. To tyczy się błędu, który pokazuje teraz kompilator ;p
P-39518
imralav
» 2011-08-20 13:45:11
O ile wiem jedyna funkcja nie zwracająca wartości to funkcja
void
. Ty masz funkcję
string
 i taką wartość powinna zwracać, a tego nie robi.
P-39531
« 1 »
  Strona 1 z 1