C/C++ Help
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
 
User Name:
Password:
Remember me
 
Go Back   Dev Articles Community ForumsProgrammingC/C++ Help

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Display Modes
 
Unread Dev Articles Community Forums Sponsor:
  #1  
Old June 18th, 2009, 02:21 PM
acting15 acting15 is offline
Registered User
Dev Articles Newbie (0 - 499 posts)
 
Join Date: Jun 2009
Posts: 1 acting15 User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 18 m 53 sec
Reputation Power: 0
General - C++ Hangman game tutorial I cant get to compile

I'm following a tutorial on the net and I understand everything in it but I'm getting fatal error C1083: Cannot open include file: 'fstream.h': No such file or directory. I'm using Visual c++ 2008 express

I added the header files.




#include "stdafx.h"
#include <iostream> // For input/output
#include <fstream.h> // For file input/output
#include <string.h> // For strcpy
#include <time.h> // For time
#include <stdlib.h> // For toupper and tolower

#define MAX_WORD_SIZE 15 // The max size for words
#define MAX_WORDS 255 // The max number of words


void Loadfile(); // Prototype for our functions
void RunGame();
void DrawGallows(int State);

typedef char String[MAX_WORD_SIZE]; // Make a char type with 15 chars
String Words[MAX_WORDS -1]; // This array will hold our words
int Count; // Word count

// The main function of our hangman game
void main()
{
char Continue = 'Y'; // End game if = to 'N'
cout << "Welcome to Hangman ... Don't lose your head!" << endl;

Loadfile(); // Load the data file

// Continue the game as long as the player wants
while(Continue == 'Y')
{
RunGame(); // Run the game
cout << endl<< "Do you want to play again (Yes or No)?" ;
cin << Continue;
Continue = toupper(Continue);
}

// Say good bye
cout << endl << "Thanks for playing ." << endl;
}

// This will load our file
void LoadFile()
{
char C; // Used to find EOF
ifstream DATfile; // The in file

Count=0; // Set count to 0

// Open the data file
DATfile.open("words.dat");

//Loop untill end of file
while((C=Datfile.peek()) != EOF)
// Get the next word and then increment Count
Datfile >> Words[Count++1];

// If we surpass the max exit and tell the user
if(Count > MAX_WORDS -1)
{
cout << endl << "Too many words in the file, stopping with "
<< MAX_WORDS << " << endl;
Count = MAX_WORDS;
break;
}

}

// We need to subtract one to get the correct number of words
Count--;

// Close the data file
Datfile.close();

}

// This function will run the game
void RunGame()
{
int Word; // This will hold the subscript of our word
int Size; // This will hold the length of our word
int State=1; // This holds the games state
int Subscript=0; // This will hold subscripts
char Guess[MAX_WORD_SIZE]; // This will hold the current word
char Copy[MAX_WORD_SIZE]; // This will hold a copy of the word
char Letter; // This will be their letter guess
int Correct=0; // This is a True/False value deciding if they got a good answer

// Seed and create a random number
srand((unsigned)time( NULL )); // Use time as a seed
Word = rand() % Count;

// Make a local copy of the word
strcpy(Copy,Words[Word]);

Size = strlen(Words[Word]); // Get the word's size

// Create a null terminated string to represent the word as the player knows it
for(; Subscript < Size; Subscript++)
{
Guess[Subscript] = '-';
}

// Insert the null character
Guess[Subscript] = '\0';

// Go untill the player is hung
while(State!=6)
{
DrawGallows(State); // Draw the Gallows
cout << Guess << endl; // Draw guess

cout << "Guess a letter :";
cin << Letter;

// We will use only lower case letter
Letter = tolower(Letter);

// Loop through the word
for(Subscript = 0; Subscript < Size; Subscript++)
{

// If the guess is good, tell the user and update Guess
if(Copy[Subscript] == Letter
{
Guess[Subscript] = Letter;
Correct = 1;
cout << endl << "Good Guess!";

// If guess equals the word, they won, so exit
if(strcmp(Words[Word],Guess == 0
{
cout << endl << "Yes, you survived and won!";
return;
}
}
}

// If they didn't get a letter correct, tell the user
if(Correct == 0)
{
cout << endl << "Sorry, bad guess!";
State++;
}

Correct = 0; // Reset Correct

}

DrawGallows(State); // Draw the Gallows at end of game. They lost if they are here so tell them the answer.
cout << "The word was : " << Words[Word] << endl << endl;

}

// This will Draw the Gallows according to the state
void DrawGallows(int State)
{
if(State==6)
{
// The \\ will translate as '\' because it is a special char
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | O "<<endl
<<" | /|\\ "<<endl
<<" | / \\ "<<endl
<<" |Your Dead "<<endl
<<" ============"<<endl<<endl;
}
else if(State==5)
{
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | O "<<endl
<<" | /|\\ "<<endl
<<" | \\ "<<endl
<<" | "<<endl
<<" ============"<<endl<<endl;
}
else if(State==4)
{
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | O "<<endl
<<" | /|\\ "<<endl
<<" | "<<endl
<<" | "<<endl
<<" ============="<<endl<<endl;
}
else if(State==3)
{
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | O "<<endl
<<" | /| "<<endl
<<" | "<<endl
<<" | "<<endl
<<" ============="<<endl<<endl;
}
else if(State==2)
{
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | O "<<endl
<<" | | "<<endl
<<" | "<<endl
<<" | "<<endl
<<" ============="<<endl<<endl;
}
else if(State==1)
{
cout<<endl<<endl
<<" +----+ "<<endl
<<" | | "<<endl
<<" | "<<endl
<<" | "<<endl
<<" | "<<endl
<<" | "<<endl
<<" ============="<<endl<<endl;
}

}

Reply With Quote
  #2  
Old July 8th, 2009, 07:17 PM
Cirus Cirus is offline
Contributing User
Dev Articles Newbie (0 - 499 posts)
 
Join Date: Mar 2005
Posts: 296 Cirus User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 Day 13 h 30 m 11 sec
Reputation Power: 5
May be you failed to include the correct path. It may be true that fstream.h is defined in a namespace and that you need not write .h after it.

Reply With Quote
Reply

Viewing: Dev Articles Community ForumsProgrammingC/C++ Help > General - C++ Hangman game tutorial I cant get to compile


Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump




 Free IT White Papers!
 
How to Present Effectively Online
This white paper offers practical and actionable advice on the key steps that any presenter should consider as they plan and execute a Webinar or online meeting.

Request Your Free Technology Downloads!
 
Open Source Security Myths
Open Source Software (OSS) is computer software whose source code is available to the general public with relaxed or non-existent intellectual property restrictions (or arrangement such as the public domain), and is usually developed with the input of many contributors.

Request Your Free Technology Downloads!
 
Power and Cooling Capacity Management for Data Centers
This paper describes the principles for achieving power and cooling capacity management.

Request Your Free Technology Downloads!
 
Scalable, Fault-Tolerant NAS for Oracle - The Next Generation
For several years NAS has been evolving as a storage alternative for Oracle databases, and for good reason: NAS is quite often the simplest, most cost-effective storage approach for Oracle. Learn about the benefits that HP's approach to scalable NAS brings to Oracle environments in this comprehensive white paper.

Request Your Free Technology Downloads!
 
Understanding Web Application Security Challenges
This white paper discusses many common threats and preventive measures for Web application security, and explains what you can do to help protect your organization.

Request Your Free Technology Downloads!
 

Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 




© 2003-2009 by Developer Shed. All rights reserved. DS Cluster 2 Hosted by Hostway
Stay green...Green IT