lnk2019 error in very simple c++ program
- by Erin
I have tried removing various parts and building, but nothing makes the lnk2019 error go away, or even produces any normal errors.
Everything is in the one file at the moment (it won't be later when it is finished). The program has three lists of words and makes a jargon phrase out of them, and you are supposed to be able to add words, remove words, view the lists, restore defaults, save changes to file, and load changes from file.
#include "stdafx.h"
#include <iostream>
#include <string.h>
using namespace std;
const int maxlist = 20;
string adj1[maxlist], adj2[maxlist], noun[maxlist];
void defaultlist(int list)
{
if(list == 1)
{
adj1[0] = "green";
adj1[1] = "red";
adj1[2] = "yellow";
adj1[3] = "blue";
adj1[4] = "purple";
int i = 5;
while(i != maxlist)
{
adj1[i] = "";
i = i + 1;
}
}
if(list == 2)
{
adj2[0] = "shiny";
adj2[1] = "hard";
adj2[2] = "soft";
adj2[3] = "spiky";
adj2[4] = "furry";
int i = 5;
while(i != maxlist)
{
adj2[i] = "";
i = i + 1;
}
}
if(list == 3)
{
noun[0] = "cat";
noun[1] = "dog";
noun[2] = "desk";
noun[3] = "chair";
noun[4] = "door";
int i = 5;
while(i != maxlist)
{
noun[i] = "";
i = i + 1;
}
}
return;
}
void printlist(int list)
{
if(list == 1)
{
int i = 0;
while(!(i == maxlist))
{
cout << adj1[i] << endl;
i = i + 1;
}
}
if(list == 2)
{
int i = 0;
while(!(i == maxlist))
{
cout << adj2[i] << endl;
i = i + 1;
}
}
if(list == 3)
{
int i = 0;
while(!(i == maxlist))
{
cout << noun[i] << endl;
i = i + 1;
}
}
return;
}
string makephrase()
{
int num1 = rand()%maxlist;
int num2 = rand()%maxlist;
int num3 = rand()%maxlist;
int num4 = rand()%1;
string word1, word2, word3;
if(num4 = 0)
{
word1 = adj1[num1];
word2 = adj2[num2];
}
else
{
word1 = adj2[num1];
word2 = adj1[num2];
}
word3 = noun[num3];
return word1 + " ," + word2 + " " + word3;
}
string addword(string word, int list)
{
string result;
if(list == 1)
{
int i = 0;
while(!(adj1[i] == "" || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "List is full. Please try again.";
if(adj1[i] == "")
{
adj1[i] = word;
result = "Word was entered successfully.";
}
}
if(list == 2)
{
int i = 0;
while(!(adj2[i] == "" || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "List is full. Please try again.";
if(adj2[i] == "")
{
adj2[i] = word;
result = "Word was entered successfully.";
}
}
if(list == 3)
{
int i = 0;
while(!(noun[i] == "" || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "List is full. Please try again.";
if(noun[i] == "")
{
noun[i] = word;
result = "Word was entered successfully.";
}
}
return result;
}
string removeword(string word, int list)
{
string result;
if(list == 1)
{
int i = 0;
while(!(adj1[i] == word || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "Word is not on the list. Please try again.";
if(adj1[i] == word)
{
adj1[i] = "";
result = "Word was removed successfully.";
}
}
if(list == 2)
{
int i = 0;
while(!(adj2[i] == word || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "Word is not on the list. Please try again.";
if(adj2[i] == word)
{
adj2[i] = "";
result = "Word was removed successfully.";
}
}
if(list == 3)
{
int i = 0;
while(!(noun[i] == word || i == maxlist))
{
i = i + 1;
}
if(i == maxlist) result = "Word is not on the list. Please try again.";
if(noun[i] == word)
{
noun[i] = "";
result = "Word was removed successfully.";
}
}
return result;
}
/////////////////////////////main///////////////////////////////////
int main()
{
string mainselection;
string makeselection;
string phrase;
defaultlist(1);
defaultlist(2);
defaultlist(3);
cout << "This program generates jargon phrases made of two adjectives and one noun,";
cout << " on three lists. Each list may contain a maximum of " << maxlist << "elements.";
cout << " Please choose from the following menu by typing the appropriate number ";
cout << "and pressing enter." << endl;
cout << endl;
cout << "1. Make a jargon phrase." << endl;
cout << "2. View a list." << endl;
cout << "3. Add a word to a list." << endl;
cout << "4. Remove a word from a list." << endl;
cout << "5. Restore default lists." << endl;
cout << "More options coming soon!." << endl;
cin mainselection
if(mainselection == 1)
{
phrase = makephrase();
cout << "Your phrase is " << phrase << "." << endl;
cout << "To make another phrase, press 1. To go back to the main menu,";
cout << " press 2. To exit the program, press 3." << endl;
cin makeselection;
while(!(makeselection == "1" || makeselection == "2" || makeselection == "3"))
{
cout << "You have entered an invalid selection. Please try again." << endl;
cin makeselection;
}
while(makeselection == "1")
{
phrase = makephrase();
cout << "To make another phrase, press 1. To go back to the main menu,";
cout << " press 2. To exit the program, press 3." << endl;
}
if(makeselection == "2") main();
if(makeselection == "3") return 0;
}
return 0;
}
//Rest of the options coming soon!