From: "Sal" Newsgroups: comp.os.msdos.djgpp Subject: Program Crashes!!! Please help! Memory errors!!! Date: Mon, 22 Jun 1998 11:23:30 -0600 Lines: 101 NNTP-Posting-Host: 129.37.218.96 Message-ID: <358e8ecb.0@news2.ibm.net> Organization: IBM.NET To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk OK.... I wrote this little program to sort a set of names and corresponding numbers. It compiles fine... but when I run it it crashes. It usually crashes in the middle of the data inpput part. It tells me "Exiting due to signal SIGSEGV General Protection Fault at eip=000058dc ........". Sometimes it gets past the data input part and gives me an "out of memory" error. Sometimes it just prints out a bunch of garbage and hangs. I'm new to C++ so excuse my ignorance of these things. Whenever I used to program in Pascal I never had any type of memory problems... Here is the code; please tell me what you think. ---------------------------------------------------------------------------- # include # include void swapnum (int &x, int &y) { int temp; temp=x; x=y; y=temp; } void swapstring (string &a, string &b) { string temp2; temp2 = a; a=b; b=temp2; } void getnum (int &num) { cout << "How many items to sort?? "; cin >> num; cout << endl; } void getdata (string datast[], int data[], int num) { for (int i=0; i<=num-1; i++) { cout << "Enter name # "<< i+1 << " : "; cin >> datast[i]; cout << endl; cout <<"Enter " << datast[i] <<" 's number : "; cin >> data[i]; cout << endl; } } void sortst (string datast[], int data[], int num) { for (int i=0; i<=num-1; i++) { for (int j=i+1; j<=num-1; j++) { if (datast[i] > datast[j]) { swapstring (datast[i], datast[j]); swapnum (data[i], data[j]); } } } for (int i=0; i<= num-1 ; i++) { cout << datast[i] <<" - " << data[i] << endl; } } void main () { int num; getnum (num); string datast[num-1]; int data[num-1]; getdata (datast, data, num); sortst (datast, data, num); } ---------------------------------------------------------------------------- ---------- Thanks allot!!! Salvador Santolucito III o __o