Snake Game problem

F

foolsmart2005

I have written a snake game. There are 2 levels in the game(I
finished 1st level). It can run in VC++ without problem but, when I
run it on the dev C++ 4.9.9.2, it cannot run. I want to practice my
programming in Dev C++ rather than in VC++. What can I do now?

The Game:
--- writing a snake game using color console window.
1-player game. The player makes use of 4 arrow keys to operate the
movement
to chase and eat as much food (#) as possible. Food with a different
color has
score. The game will end when the snake hits itself or the player hits
ESC key.
-----Use link list is a must.

Thanks!
 
S

shan_rish

I have written a snake game. There are 2 levels in the game(I
finished 1st level). It can run in VC++ without problem but, when I
run it on the dev C++ 4.9.9.2, it cannot run. I want to practice my
programming in Dev C++ rather than in VC++. What can I do now?

The Game:
--- writing a snake game using color console window.
1-player game. The player makes use of 4 arrow keys to operate the
movement
to chase and eat as much food (#) as possible. Food with a different
color has
score. The game will end when the snake hits itself or the player hits
ESC key.
-----Use link list is a must.

Thanks!

You need to post more info regarding the compilation options and the
error messages you got when you tried to compile in Dev C++, to be of
more help.

Shan
 
K

Kai-Uwe Bux

You need to post more info regarding the compilation options and the
error messages you got when you tried to compile in Dev C++, to be of
more help.

Also, the OP should post that additional info in a forum where it is
topical. Compilation options of particular compilers and the quirks of
platform specific libraries or tricks (needed for color console windows, of
which standard C++ would not know anything) do not belong here.


Best

Kai-Uwe Bux
 
F

foolsmart2005

I have written a snake game.  There are 2 levels in the game(I
finished 1st level).   It can run in VC++ without problem but, when I
run it on the dev C++ 4.9.9.2, it cannot run.    I want to practice my
programming in Dev C++ rather than in VC++. What can I do now?

The Game:
--- writing a snake game using color console window.
1-player game. The player makes use of 4 arrow keys to operate the
movement
to chase and eat as much food (#) as possible. Food with a different
color has
score. The game will end when the snake hits itself or the player hits
ESC key.
-----Use link list is a must.

Thanks!

Owing to the file is quite a lot of code, I think I will use another
method to tell you the error. But now, I suffer a problem in Dev C++,
here is the code:
#include<iostream>
#include<iomanip>
#include<string>
using namespace std;

struct CarType{
string maker;
int year;
float price;
}

void getYourCar(CarType & car);


int main()
{
CarType myCar, yourCar;

myCar.make = "Mercedes";
myCar.year = 2008;
myCar.price = 556653;

getYourCar(yourCar);

cout << "Your car is a: " << yourCar.maker << endl;
cout << fixed << showpoint << setprecision(2) <<
"I will offer $" << yourCar.price -100 << "for your car."
<<endl;

system("pause");
return 0;

}

void getYourCar(CarType & car)
{
cout << "Enter your maker: ";
cin >> car.maker;
cout << "Enter the year: ";
cin >> car.year;
cout << "Enter the price:$";
cin >> car.price;
}

Error messages are gotten.

Compiler: Default compiler
Executing g++.exe...
g++.exe "C:\Documents and Settings\Desktop\structtest.cpp" -o "C:
\Documents and Settings\Desktop\structtest.exe" -I"C:\Dev-Cpp\lib
\gcc\mingw32\3.4.2\include" -I"C:\Dev-Cpp\include\c++
\3.4.2\backward" -I"C:\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Dev-
Cpp\include\c++\3.4.2" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
C:\Documents and Settings\Desktop\structtest.cpp:12: error: new types
may not be defined in a return type
C:\Documents and Settings\Desktop\structtest.cpp:12: error: two or
more data types in declaration of `getYourCar'

C:\Documents and Settings\Desktop\structtest.cpp: In function `int
main()':
C:\Documents and Settings\Desktop\structtest.cpp:19: error: 'struct
CarType' has no member named 'make'

C:\Documents and Settings\Desktop\structtest.cpp: In function `void
getYourCar(CarType&)':
C:\Documents and Settings\Desktop\structtest.cpp:35: error: new
declaration `void getYourCar(CarType&)'
C:\Documents and Settings\Desktop\structtest.cpp:12: error: ambiguates
old declaration `CarType getYourCar(CarType&)'

Execution terminated

This code should be no problem, why it still cannot run in Dev C++?
 
L

Linlin Yan

These is no ';' after your struct CarType definition. Does it cause
your problem?
And try to use 'void getYourCar(struct CarType & car);' instead?
 
F

foolsmart2005

These is no ';' after your struct CarType definition. Does it cause
your problem?
And try to use 'void getYourCar(struct CarType & car);' instead?

Oh, you are right, it is my careless mistake.
Now , the following is my snake game's error:
Compiler: Default compiler
Building Makefile: "E:\Dev C++\CityU\Snake\Makefile.win"
Executing make...
make.exe -f "E:\Dev C++\CityU\Snake\Makefile.win" all
g++.exe -D__DEBUG__ -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/
mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -
I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/
3.4.2" -I"C:/Dev-Cpp/include" -g3

In file included from SnakeList.h:5,
from FoodList.h:10,
from main.cpp:13:

SnakeNode.h:19:7: warning: extra tokens at end of #endif directive

g++.exe -D__DEBUG__ FoodList.o FoodNode.o main.o SnakeList.o
SnakeNode.o -o "Snake.exe" -L"C:/Dev-Cpp/lib" colorScreen.a timer.a -
g3

Execution terminated
Compilation successful

-----------here is SnakeList.h------------------
#ifndef _SNAKE_LIST_
#define _SNAKE_LIST_

#include "colorScreen.h"
#include "SnakeNode.h"
#include "FoodList.h"

class SnakeList
{
public:
SnakeList(ColorScreen& g);
SnakeList();
~SnakeList();

void adds (ColorScreen g, int x,int y,char in) ;
//void adds (ColorScreen g,int x,int y,char in) ;


void display(const SnakeNode* ptr,ColorScreen g,int sx,int sy,char
in) ;
void display(ColorScreen g,int sx, int sy,char in) ;

// function to search X hits body;
bool search(SnakeNode* ptr);
bool search();

void move(ColorScreen g,int x,int y, char in);
void move(SnakeNode*& ptr,ColorScreen g, int x,int y, char in);

void clear(SnakeNode*& ptr,ColorScreen g, int sx,int sy);
void clear(ColorScreen g,int sx,int sy);


int length (const SnakeNode* ptr) const;
int length() const;


private:

ColorScreen sGame;
int maxlen,size;
SnakeNode *head;

};


#endif
 
O

osmium

There are several things in there that make this a non-standard program:
The use of color, the use of the arrow keys, and the fact that ESC need not
be followed by <Enter>. The topic cops inhibit answers to questions such as
this. There is a brand new froup devoted to solving this problem, it is
comp.lang.c++.misc. Try posting your question there and we will see if the
cure seems to work.
 
L

Lionel B

not be followed by <Enter>. The topic cops inhibit answers to questions
such as this. There is a brand new froup devoted to solving this
problem, it is comp.lang.c++.misc. Try posting your question there and
we will see if the cure seems to work.

Um... does comp.lang.c++.misc actually exist (yet) and if so, where? It
doesn't show up on my news server or, so far as I can make out, on Google
Groups.
 
O

osmium

Lionel B said:
Um... does comp.lang.c++.misc actually exist (yet) and if so, where? It
doesn't show up on my news server or, so far as I can make out, on Google
Groups.

It was made available on individual.net yesterday. The only message so far
is an announcement (history, raison d'etre, etc) by a guy with a name I
didn't recognize. I think the new froup is a Real Good Thing, abandon this
group to the language lawyers and the green eyeshade set. Then they will
have this one and the std one and the moderated one for their "mine is
bigger than yours" talk and their endless fascination with minutiae.
 
L

Linlin Yan

Oh, you are right, it is my careless mistake.
Now , the following is my snake game's error:
Compiler: Default compiler
Building Makefile: "E:\Dev C++\CityU\Snake\Makefile.win"
Executing  make...
make.exe -f "E:\Dev C++\CityU\Snake\Makefile.win" all
g++.exe -D__DEBUG__ -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/
mingw32/3.4.2/include"  -I"C:/Dev-Cpp/include/c++/3.4.2/backward"  -
I"C:/Dev-Cpp/include/c++/3.4.2/mingw32"  -I"C:/Dev-Cpp/include/c++/
3.4.2"  -I"C:/Dev-Cpp/include"    -g3

In file included from SnakeList.h:5,
                 from FoodList.h:10,
                 from main.cpp:13:

SnakeNode.h:19:7: warning: extra tokens at end of #endif directive

g++.exe -D__DEBUG__ FoodList.o FoodNode.o main.o SnakeList.o
SnakeNode.o  -o "Snake.exe" -L"C:/Dev-Cpp/lib" colorScreen.a timer.a  -
g3

Execution terminated
Compilation successful

Since here it said 'successful', why did you still ask about wrongs?
Maybe some functions you used are not standard. So the program can not
run as you think. I think you can debug into your code, and try to
find standard way to implement them.
 
D

Default User

osmium said:
:

It was made available on individual.net yesterday. The only message
so far is an announcement (history, raison d'etre, etc) by a guy with
a name I didn't recognize.

Did it actually go through the usual discussion and voting process? I
don't recall anything about it.




Brian
 
O

osmium

Default User said:
Did it actually go through the usual discussion and voting process? I
don't recall anything about it.

I didn't follow what was going on, I knew that someone - or group - was
unhappy with the way things were and was trying to do something about it,
but I didn't help. I feel that 99.9999999999999% of what goes on in the
world is beyond my control. There is still only one post on the newsgroup.
Here is it in it's entirety, posted by Gary L. Burnore. As I said earlier,
individual.net picked it up yesterday - Monday.

---- snip ----
The Last Call for Comments on 12 May 2008 initiated a five-day period
for final comments. Following this comment period, the Big-8
Management Board has decided by consensus to create the newsgroup
comp.lang.c++.misc.

For your newsgroups file:
comp.lang.c++.misc Development in C++, libraries, cross and
single targets

comp.lang.c++.misc is an unmoderated newsgroup which will serve as a
forum for discussing C++ related issues not a part of the language
standard. This includes development, libraries and single-platform or
cross-platform C++ programming techniques. Topics that may be
discussed
include:

- Idiom for archiving specific tasks.
- Discussion of portability issues in C++.
- Inquiries as to whether a particular library exists, or a list
of suitable libraries for a given task.
- Discussions of whether a particular library is any good, or if
it should be avoided in favor of a different library.
- Cross-platform programming techniques in general.
- Particular libraries, how to work with them and how they
work internally.

Posting of advertising and/or promotional material of any kind to
comp.lang.c++.misc is explicitly prohibited. Posting of binaries is
not permitted, with the exception of small binary components in
otherwise non-binary postings, such as PGP signatures or X-Face
headers. Posts must be readable as plain text. HTML, RTF and
similarly formatted messages are prohibited.
 
F

foolsmart2005

Since here it said 'successful', why did you still ask about wrongs?
Maybe some functions you used are not standard. So the program can not
run as you think. I think you can debug into your code, and try to
find standard way to implement them.














- Show quoted text -- Hide quoted text -

- Show quoted text -

Actually, it runs with a cmd-like board without anything. But in VC+
+, there are pictures and I can play it but in dev C++, it cannot!
 
L

Linlin Yan

Actually, it runs with a cmd-like board without anything.  But in VC+
+, there are pictures and I can play it but in dev C++, it cannot!

Since you use 'int main()' as main function, the application is
compiled as a console one, which opens the cmd window. Windows
application's main function must be WinMain(). I think you need to
check the compiling and linking options.
 
B

Bart van Ingen Schenau

Did it actually go through the usual discussion and voting process? I
don't recall anything about it.

I also don't recall seeing any votes, but it seems genuine.
At least, I can find a reference to the group in the (moderated)
groups news.groups.proposals and news.announce.newsgroups.
Now, we just have to see how many servers will start carrying the new
group.

Bart v Ingen Schenau
 
F

foolsmart2005

I have written a snake game. There are 2 levels in the game(I
finished 1st level). It can run in VC++ without problem but, when I
run it on the dev C++ 4.9.9.2, it cannot run. I want to practice my
programming in Dev C++ rather than in VC++. What can I do now?

The Game:
--- writing a snake game using color console window.
1-player game. The player makes use of 4 arrow keys to operate the
movement
to chase and eat as much food (#) as possible. Food with a different
color has
score. The game will end when the snake hits itself or the player hits
ESC key.
-----Use link list is a must.

Thanks!

Finally,the problem has been solved. Thanks everyone.
 
D

Default User

osmium said:
"Default User" wrote:
---- snip ----
The Last Call for Comments on 12 May 2008 initiated a five-day period
for final comments. Following this comment period, the Big-8
Management Board has decided by consensus to create the newsgroup
comp.lang.c++.misc.

Ok, I guess it did. I don't recall it here (a logical spot) but it
seems to have gone through the process.

It sounds like a useless group to me, but I could be wrong.





Brian
 
D

Default User

Bart said:
I also don't recall seeing any votes, but it seems genuine.
At least, I can find a reference to the group in the (moderated)
groups news.groups.proposals and news.announce.newsgroups.
Now, we just have to see how many servers will start carrying the new
group.

Voting should go through the main group when creating a splinter, but
that's the Big Six's problem. Maybe it was referenced here and I missed
it.




Brian
 
L

Lionel B

It was made available on individual.net yesterday. The only message so
far is an announcement (history, raison d'etre, etc) by a guy with a
name I didn't recognize. I think the new froup is a Real Good Thing,

Maybe, maybe not. Have to see whether it takes off and is actually useful
to anyone.
abandon this group to the language lawyers and the green eyeshade set.

Um... this ng exists specifically to discuss C++ *language* issues. As I
understand it the whole idea of this new group was to create a forum to
discuss non-language-specific issues which nonetheless pertain to C++. If
it does take off - and thereby reduces the (substantial) noise of non-
language issues raised in this ng - then as far as I'm concerned that'll
be a Real Good Thing. Whether that will happen remains to be seen.

As I see it, most of the OT posts here relate to platform/compiler/
library/... issues, which generally have their *own* forums anyway; so
I'm a bit sceptical as to what purpose the new group serves. But we'll
have to wait and see.
Then they will have this one and the std one and the moderated one for
their "mine is bigger than yours" talk

Actually, I think the new ng would be an excellent forum for the willy-
waver contingent. Please let them all go there, now ;-)
and their endless fascination with minutiae.

Well, sometimes the minutiae bites... C++ is like that.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,766
Messages
2,569,569
Members
45,042
Latest member
icassiem

Latest Threads

Top