I hate to bring this over here, but I need some C++ help [message #95062] |
Sun, 13 June 2004 15:51 |
|
liberator
Messages: 246 Registered: May 2003 Location: Classified, Level Phi cle...
Karma: 0
|
Recruit |
|
|
My instructor has us writing a thing to write skeleton programs. It takes input from the user in the as strings(library/header names, class names, ect) and outputs them along with certain basic code to a separate source file in the same directory. It looks like this
//John Mynard
//CS-318
//Purpose: This program interacts with the programmer
// to generate the skeleton of a second program
// that the programmer with complete and debug.
//Date Created: Monday, June 7, 2004
//Date Last Edited: Monday, June 11, 2004
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void main()
{
//initialization of output file
ofstream out_stream;
out_stream.open ("sourcegen.cpp");
int menuchoice;
string name;
string type;
char loopcon = 'y';
//interactivity
while (menuchoice !=0)
{
cout << "Welcome to Code Generator" << endl;
cout << "Please enter a selection" << endl << endl;
cout << "Select 1 to add C++ Library/Header files" << endl;
cout << "Select 2 to add C++ Class declarations" << endl;
cout << "Select 3 to add C++ Structure declarations" << endl;
cout << "Select 4 to add constant variable declarations" << endl;
cout << "Select 5 to add variable declarations" << endl;
cout << "Select 0 to exit Code Generator" << endl;
cin >> menuchoice;
switch (menuchoice)
{
case 1:
{
while (loopcon == 'y' || loopcon == 'Y')
{
cout << "Enter the Library/Header name" << endl;
cin >> name;
out_stream << "#include <" << name << ">" << endl;
cout << "Are there any other Library/Header file you wish to include?" << endl;
cin >> loopcon;
}
out_stream << "using namespace std;" << endl << endl;
break;
}
case 2:
{
while (loopcon == 'y' || loopcon == 'Y')
{
cout << "Enter the Class name" << endl;
cin >> name;
out_stream << "struct " << name << endl;
cout << "Are there any other classes you wish to include?" << endl;
cin >> loopcon;
}
out_stream << endl << endl;
break;
}
case 3:
{
while (loopcon == 'y' || loopcon == 'Y')
{
cout << "Enter the Structure name" << endl;
cin >> name;
out_stream << "class " << name << endl;
out_stream << "{" << endl << "public:" << endl << "private:" << endl << endl;
cout << "Are there any other structures you wish to include?" << endl;
cin >> loopcon;
}
out_stream << endl << endl;
break;
}
case 4:
{
// Choice.ConstantQuery();
break;
}
case 5:
{
// Choice.VariableQuery();
break;
}
}
}
}
Excuse the quotes at the bottom, I had tried putting everything in a class but it wouldn't let me open an output file in the class for the class to use.
Anyway, it compiles and runs fine on the first selection, but when it get's back to the menu and you make a second selection it starts cycling through the menu over and over and won't go down to the switch statement.
I don't understand why it's doing this unless there is something wrong with my switch statement/menu system, in which case I'll primitize even more and switch it to $$$$ing "if" statements.
Any help would be appreciaed. Thanks in advance!
There was a time when people were impressed that I have the firepower to decimate a planet in under 10 minutes.
|
|
|
|
I hate to bring this over here, but I need some C++ help [message #95136] |
Sun, 13 June 2004 19:53 |
|
liberator
Messages: 246 Registered: May 2003 Location: Classified, Level Phi cle...
Karma: 0
|
Recruit |
|
|
You're not in College yet? Take from someone who is, learn what you can when you can, and the classes in college that are designed for people who have never seen the material before will be easy A's.
But, anyone please I need help. If you can't help with the problem specifically, suggest someplace where I can.
There was a time when people were impressed that I have the firepower to decimate a planet in under 10 minutes.
|
|
|
|
|
|
|
I hate to bring this over here, but I need some C++ help [message #95183] |
Mon, 14 June 2004 00:37 |
Weirdo
Messages: 369 Registered: March 2003
Karma: 0
|
Commander |
|
|
I don't have much experience in C++, but I think I found something.
First you declare- char loopcon = 'y'; -
Next you do this in your case statement.
while (loopcon == 'y' || loopcon == 'Y') This one is true the first time.
after the loop you to this. cin >> loopcon;
I don't know what this means, but I guess this changes the value of loopcon, wich makes it not anymore value 'y'
So when you go back to a new case.
while (loopcon == 'y' || loopcon == 'Y'), will be false.
Make sure after the while loop, loopcon is again 'y'.
Hope this helps you.
Size doesn't matter.
|
|
|
I hate to bring this over here, but I need some C++ help [message #95234] |
Mon, 14 June 2004 10:41 |
|
liberator
Messages: 246 Registered: May 2003 Location: Classified, Level Phi cle...
Karma: 0
|
Recruit |
|
|
That's exactly what was wrong. ben over at DevX helped me with it last night. I don't know why I didn't see it myself.
Edit:
Now that I've thought about some:
While I can give DevX and C++ Learning Community a big thumbs up, I have to give a big thumbs down to free2code.net. I made multiple posts about different problems trying to get help and was promptly ignored on everyone for a long time.
There was a time when people were impressed that I have the firepower to decimate a planet in under 10 minutes.
|
|
|
I hate to bring this over here, but I need some C++ help [message #95237] |
Mon, 14 June 2004 11:07 |
Weirdo
Messages: 369 Registered: March 2003
Karma: 0
|
Commander |
|
|
liberator | That's exactly what was wrong. ben over at DevX helped me with it last night. I don't know why I didn't see it myself.
Edit:
Now that I've thought about some:
While I can give DevX and C++ Learning Community a big thumbs up, I have to give a big thumbs down to free2code.net. I made multiple posts about different problems trying to get help and was promptly ignored on everyone for a long time.
|
Good to hear. I think I will learn some C++ in the summertime. At the moment Java is my primary programming language. I know how annoying these things can be, I once searched 3 hours for what was wrong in a very big program, just to find out instead of "case 0x00" I changed it to "case 0x00a". Being a very big school project I had to go trough a lot of code.
Size doesn't matter.
|
|
|
|
I hate to bring this over here, but I need some C++ help [message #95273] |
Mon, 14 June 2004 13:37 |
Weirdo
Messages: 369 Registered: March 2003
Karma: 0
|
Commander |
|
|
That's what I mean with learning, getting a book, but to bad our local library doesn't have any books about programming so I have to buy one.
Also Java, and javascript are a bit diffrent. But if you know how to program in C++, Java isn't that hard to learn.
Size doesn't matter.
|
|
|
|
I hate to bring this over here, but I need some C++ help [message #95378] |
Mon, 14 June 2004 22:05 |
|
liberator
Messages: 246 Registered: May 2003 Location: Classified, Level Phi cle...
Karma: 0
|
Recruit |
|
|
Be aware, if the book is that old, some stuff will be different. .NET is vitually a new language or so I've been told.
There was a time when people were impressed that I have the firepower to decimate a planet in under 10 minutes.
|
|
|