C++ Tablice i kilka pytań

0

Wybaczcie że może niepotrzebnie zakładam nowy temat ale, mam sytuacje z którą nie jestem w stanie sobie sam poradzić...

Chciałem napisać program konsolowy (korzystam z Visual Studio 2005) z wykorzystaniem tablicy. Dodam iż zaczynam dopiero swoją przygodę z programowaniem, korzystam z książki "Od podstaw Visual C++ 2005" Ivora Hortona.

Programik jest dość prosty, ale wyrzuca mi błąd którego nie rozumiem.

Oto kod tego programu:

#include <iostream>


using namespace std;



int main()
{
	char pracownik [2][1000];
	
	int i;
	int k;
	k = 1;
	i = 1000;
	
	do
	{
	cin.getline(pracownik[k],i,'\n');
	

	k++;	
	}while(k <=2);


	
   

system("pause");
}

Gdy odpalam program mogę wpisać dane, lecz później wyskakuje mi komunikat:

Run-Time Check Failure #2 - Stack around the variable 'pracownik' was corrupted.

Niestety moja znajomość angielskiego nie pozwala mi na zrozumienie tego komunikatu, a i google translate też nie ułatwia sprawy.

Czy znajdzie się ktoś kto mógłby mi wykazać gdzie jest błąd?

A teraz mam takie pytania do bardziej doświadczonych użytkowników:

  1. Czy Visual Studio 2005 to dobry program na początek? (Jeśli nie to na jaki zmienić)

  2. Czy z polecacie tą książkę z której ja się uczę, osobiście wydaje mi się że robię postępy :) ?

Dziękuje z góry za pomoc i pozdrawiam,

Mateusz.

2

Tablice indeksowane są od ZERA, ZAWSZE:

#include <iostream>
using namespace std;
 
int main()
  {
   char pracownik [2][1000]; 
   for(int k=0;k<2;++k) cin.getline(pracownik[k],1000,'\n');
   for(int k=0;k<2;++k) cout<<pracownik[k]<<endl;
   cin.get();
   return 0;
  }
0

No tak od zera! Mój błąd.

Dziękuję.

1 użytkowników online, w tym zalogowanych: 0, gości: 1