Форум программистов, компьютерный форум CyberForum.ru

iostream.h - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 47, средняя оценка - 4.98
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
07.02.2011, 20:46     iostream.h #1
Всем привет! Кто-нибудь может выложить файл iostream.h у меня компилятор выдает ошибку fatal error C1083: Cannot open include file: 'iostream.h': No such file or directory, я проверил в папке include компилятора этот файл, но его там нет... помогите?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2011, 20:46     iostream.h
Посмотрите здесь:

C++ <iostream.h>
C++ iostream.h
C++ <iostream.h>
iostream C++
iostream C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.02.2011, 22:06     iostream.h #21
Rustam, да что же такое-то... Вы ошибки можете наконец написать?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
von_Manstein
17 / 17 / 0
Регистрация: 23.01.2011
Сообщений: 61
07.02.2011, 22:06     iostream.h #22
Или читай книгу, мож чего пропустил, или выкинь её. к примеру из этой книги всё работает и понятно как.
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
07.02.2011, 22:13  [ТС]     iostream.h #23
Цитата Сообщение от silent_1991 Посмотреть сообщение
Rustam, да что же такое-то... Вы ошибки можете наконец написать?
------ Build started: Project: 7, Configuration: Debug Win32 ------
Build started 07.02.2011 22:06:33.
InitializeBuildStatus:
Touching "Debug\7.unsuccessfulbuild".
ClCompile:
freakout.cc
c:\documents and settings\pirat\рабочий стол\freakout.cc(10): fatal error C1083: Cannot open include file: 'iostream.h': No such file or directory
blackbox.cc
c:\documents and settings\pirat\рабочий стол\blackbox.cc(12): fatal error C1083: Cannot open include file: 'iostream.h': No such file or directory
Generating Code...

Build FAILED.

Time Elapsed 00:00:02.34
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Добавлено через 1 минуту
Цитата Сообщение от von_Manstein Посмотреть сообщение
Или читай книгу, мож чего пропустил, или выкинь её. к примеру из этой книги всё работает и понятно как.
нет ничего не пропустил, просто эта книга мне больше всего понравилась...
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.02.2011, 22:13     iostream.h #24
Ёшкин кот... Я не могу работать в такой обстановке!
Тьфу, это ж я собирался завтра шефу сказать...

Rustam, напишите ошибки после замены iostream.h на iostream.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
07.02.2011, 22:14     iostream.h #25

Не по теме:

silent_1991, Ахаха) Шикарно. После прочтения ошибок - захотел написать примерно такое же))


Автор, ну хватит издеваться(
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
07.02.2011, 22:19  [ТС]     iostream.h #26
прошу прощения...

вот

------ Build started: Project: 7, Configuration: Debug Win32 ------
Build started 07.02.2011 22:17:54.
InitializeBuildStatus:
Touching "Debug\7.unsuccessfulbuild".
ClCompile:
freakout.cc
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2143: syntax error : missing ';' before '.'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2059: syntax error : '}'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2143: syntax error : missing ';' before '}'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2059: syntax error : '}'
c:\documents and settings\pirat\рабочий стол\freakout.cc(159): error C2440: '=' : cannot convert from 'const char [11]' to 'LPCWSTR'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
c:\documents and settings\pirat\рабочий стол\freakout.cc(175): error C2664: 'CreateWindowExW' : cannot convert parameter 2 from 'const char [11]' to 'LPCWSTR'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
c:\documents and settings\pirat\рабочий стол\freakout.cc(554): error C2001: newline in constant
c:\documents and settings\pirat\рабочий стол\freakout.cc(555): error C2146: syntax error : missing ')' before identifier 'Level'
c:\documents and settings\pirat\рабочий стол\freakout.cc(555): error C2001: newline in constant
blackbox.cc
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2143: syntax error : missing ';' before '.'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2059: syntax error : '}'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2143: syntax error : missing ';' before '}'
c:\documents and settings\pirat\рабочий стол\blackbox.h(23): error C2059: syntax error : '}'
c:\documents and settings\pirat\рабочий стол\blackbox.cc(228): error C2143: syntax error : missing ')' before '='
c:\documents and settings\pirat\рабочий стол\blackbox.cc(228): error C2143: syntax error : missing ';' before '='
c:\documents and settings\pirat\рабочий стол\blackbox.cc(228): error C2059: syntax error : ')'
c:\documents and settings\pirat\рабочий стол\blackbox.cc(228): error C2143: syntax error : missing ';' before '{'
c:\documents and settings\pirat\рабочий стол\blackbox.cc(228): error C2143: syntax error : missing ';' before '='
c:\documents and settings\pirat\рабочий стол\blackbox.cc(343): error C2601: 'Draw_Rectangle' : local function definitions are illegal
c:\documents and settings\pirat\рабочий стол\blackbox.cc(403): fatal error C1075: end of file found before the left brace '{' at 'c:\documents and settings\pirat\рабочий стол\blackbox.cc(343)' was matched
Generating Code...

Build FAILED.

Time Elapsed 00:00:09.42
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
von_Manstein
17 / 17 / 0
Регистрация: 23.01.2011
Сообщений: 61
07.02.2011, 22:24     iostream.h #27
Напиши прогу сам, заодно и проверишь. А эти скачанные примеры. которые люди собирают не понимая что к чему никогда не доводили до добра.

Добавлено через 1 минуту
А то там и синтаксис, как я чувствую. неверный, судя по выводу. Надо всё самому делать....
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.02.2011, 22:40     iostream.h #28
Rustam, ну что я могу сказать. Это куча синтаксических ошибок, как вам говорит и компилятор. Хотите быть хоть мало-мальским программистом - учитесь читать и понимать сообщения компилятора, они не для красного словца им формируются. Исправляйте синтаксические ошибки, если будут ещё вопросы - обращайтесь.
+c+
112 / 22 / 3
Регистрация: 20.11.2010
Сообщений: 1,294
07.02.2011, 23:34     iostream.h #29
дело в том что в той игре старые библиотеки directX используются! LPDIRECTDRAWSURFACE7
Скорее всего из-за этого ошибки!
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.02.2011, 23:36     iostream.h #30
+c+, я пока вижу, что большинство ошибок - syntax error. Пусть ТС сначала их исправит - потом будем с ним дальше разговаривать.
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
08.02.2011, 10:01  [ТС]     iostream.h #31
я исправил все ошибки, но есть две ошибки, никак не смог их исправить

------ Build started: Project: tutor, Configuration: Debug Win32 ------
Build started 08.02.2011 9:59:55.
InitializeBuildStatus:
Touching "Debug\tutor.unsuccessfulbuild".
ClCompile:
freakout.cc
c:\documents and settings\pirat\мои документы\freakout.cc(6): fatal error C1034: windows.h: no include path set
blackbox.cc
c:\documents and settings\pirat\мои документы\blackbox.cc(8): fatal error C1034: windows.h: no include path set
Generating Code...

Build FAILED.

Time Elapsed 00:00:01.42
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Как подключить эти пути?
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
08.02.2011, 10:07  [ТС]     iostream.h #32
я не нашел файла windows.h или может плохо искал?

Добавлено через 1 минуту
я не нашел файл windows.h его в каталоге vc нет, или может плохо искал?
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
08.02.2011, 10:52     iostream.h #33
Цитата Сообщение от Rustam Посмотреть сообщение
я не нашел файла windows.h или может плохо искал?
iostream.h

Не по теме:

Видишь суслика? И я не вижу. А он есть... (с)

+c+
112 / 22 / 3
Регистрация: 20.11.2010
Сообщений: 1,294
08.02.2011, 13:43     iostream.h #34
рабочий код той игры, только для VC6 . Повырезал весь directX freakout.cpp :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
// FREAKOUT.CPP - break game demo
 
// INCLUDES ///////////////////////////////////////////////////
 
#define WIN32_LEAN_AND_MEAN // include all macros
#define INITGUID            // include all GUIDs 
#include <ddraw.h>
#include <windows.h>        // include important windows stuff
#include <windowsx.h> 
#include <mmsystem.h>
 
 
#include <iostream.h>       // include important C/C++ stuff
#include <conio.h>
#include <stdlib.h>
#include <malloc.h>
#include <memory.h>
#include <string.h>
#include <stdarg.h>
#include <stdio.h>
#include <math.h>
#include <io.h>
#include <fcntl.h>
#include <ctime>
 
#include <ddraw.h>          // directX includes
//#include "blackbox.h"       // game library includes
 
// DEFINES ////////////////////////////////////////////////////
 
// defines for windows 
#define WINDOW_CLASS_NAME "WIN3DCLASS"  // class name
 
#define WINDOW_WIDTH            640     // size of window
#define WINDOW_HEIGHT           480
#define SCREEN_WIDTH    640  // size of screen
#define SCREEN_HEIGHT   480
 
// states for game loop
#define GAME_STATE_INIT         0
#define GAME_STATE_START_LEVEL  1
#define GAME_STATE_RUN          2
#define GAME_STATE_SHUTDOWN     3
#define GAME_STATE_EXIT         4 
 
// block defines
#define NUM_BLOCK_ROWS          6
#define NUM_BLOCK_COLUMNS       8
 
#define BLOCK_WIDTH             64
#define BLOCK_HEIGHT            16
#define BLOCK_ORIGIN_X          8
#define BLOCK_ORIGIN_Y          8
#define BLOCK_X_GAP             80
#define BLOCK_Y_GAP             32
 
// paddle defines
#define PADDLE_START_X          (SCREEN_WIDTH/2 - 16)
#define PADDLE_START_Y          (SCREEN_HEIGHT - 32);
#define PADDLE_WIDTH            32
#define PADDLE_HEIGHT           8
#define PADDLE_COLOR            191
 
// ball defines
#define BALL_START_Y            (SCREEN_HEIGHT/2)
#define BALL_SIZE                4
 
// PROTOTYPES /////////////////////////////////////////////////
 
// game console
int Game_Init(void *parms=NULL);
int Game_Shutdown(void *parms=NULL);
int Game_Main(void *parms=NULL);
 
#define KEY_DOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 1 : 0)
 
// GLOBALS ////////////////////////////////////////////////////
 
HWND main_window_handle  = NULL; // save the window handle
HINSTANCE main_instance  = NULL; // save the instance
int game_state           = GAME_STATE_INIT; // starting state
HDC      hdc;       // generic dc
 
int paddle_x = 0, paddle_y = 0; // tracks position of paddle
int ball_x   = 0, ball_y   = 0; // tracks position of ball
int ball_dx  = 0, ball_dy  = 0; // velocity of ball
int score    = 0;               // the score
int level    = 1;               // the current level
int blocks_hit = 0;             // tracks number of blocks hit
 
// this contains the game grid data   
 
UCHAR blocks[NUM_BLOCK_ROWS][NUM_BLOCK_COLUMNS];     
 
// FUNCTIONS //////////////////////////////////////////////////
 
LRESULT CALLBACK WindowProc(HWND hwnd, 
                            UINT msg, 
                            WPARAM wparam, 
                            LPARAM lparam)
{
// this is the main message handler of the system
PAINTSTRUCT ps;        // used in WM_PAINT
HDC         hdc;       // handle to a device context
 
// what is the message 
switch(msg)
    {   
    case WM_CREATE: 
        {
        // do initialization stuff here
        return(0);
        } break;
 
    case WM_PAINT:
         {
         // start painting
         hdc = BeginPaint(hwnd,&ps);
 
         // the window is now validated 
 
         // end painting
         EndPaint(hwnd,&ps);
         return(0);
        } break;
 
    case WM_DESTROY: 
        {
        // kill the application         
        PostQuitMessage(0);
        return(0);
        } break;
 
    default:break;
 
    } // end switch
 
// process any messages that we didn't take care of 
return (DefWindowProc(hwnd, msg, wparam, lparam));
 
} // end WinProc
 
// WINMAIN ////////////////////////////////////////////////////
 
int WINAPI WinMain( HINSTANCE hinstance,
                    HINSTANCE hprevinstance,
                    LPSTR lpcmdline,
                    int ncmdshow)
{
// this is the winmain function
 
WNDCLASS winclass;  // this will hold the class we create
HWND     hwnd;      // generic window handle
MSG      msg;       // generic message
//PAINTSTRUCT ps;     // generic paintstruct
 
// first fill in the window class stucture
winclass.style          = CS_DBLCLKS | CS_OWNDC | 
                          CS_HREDRAW | CS_VREDRAW;
winclass.lpfnWndProc    = WindowProc;
winclass.cbClsExtra     = 0;
winclass.cbWndExtra     = 0;
winclass.hInstance      = hinstance;
winclass.hIcon          = LoadIcon(NULL, IDI_APPLICATION);
winclass.hCursor        = LoadCursor(NULL, IDC_ARROW);
winclass.hbrBackground  = (HBRUSH)GetStockObject(BLACK_BRUSH);
winclass.lpszMenuName   = NULL; 
winclass.lpszClassName  = WINDOW_CLASS_NAME;
 
// register the window class
if (!RegisterClass(&winclass))
    return(0);
 
// create the window, note the use of WS_POPUP
if (!(hwnd = CreateWindowEx(NULL,WINDOW_CLASS_NAME,    // class
             "WIN3D Game Console"// title
             WS_POPUP | WS_VISIBLE,
             0,0,                   // initial x,y
             GetSystemMetrics(SM_CXSCREEN),  // intial width
             GetSystemMetrics(SM_CYSCREEN),  // initial height
             NULL,      // handle to parent 
             NULL,      // handle to menu
             hinstance,// instance
             NULL)))    // creation parms
return(0);
 
// hide mouse
ShowCursor(FALSE);
 
// save the window handle and instance in a global
main_window_handle = hwnd;
main_instance      = hinstance;
hdc=GetDC(hwnd);
 
// perform all game console specific initialization
Game_Init();
 
// enter main event loop
while(1)
    {
    if (PeekMessage(&msg,NULL,0,0,PM_REMOVE))
        { 
        // test if this is a quit
        if (msg.message == WM_QUIT)
           break;
    
        // translate any accelerator keys
        TranslateMessage(&msg);
 
        // send the message to the window proc
        DispatchMessage(&msg);
        } // end if
    
    // main game processing goes here
    Game_Main();
 
    } // end while
 
// shutdown game and release all resources
Game_Shutdown();
 
// show mouse
ShowCursor(TRUE);
 
// return to Windows like this
return(msg.wParam);
 
} // end WinMain
 
// T3DX GAME PROGRAMMING CONSOLE FUNCTIONS ////////////////////
 
int Game_Init(void *param)
{
// this function is where you do all the initialization 
// for your game
 
 
// return success
return(1);
 
} // end Game_Init
 
///////////////////////////////////////////////////////////////
 
int Game_Shutdown(void *param)
{
// this function is where you shutdown your game and
// release all resources that you allocated
 
 
// return success
return(1);
 
} // end Game_Shutdown
 
///////////////////////////////////////////////////////////////
 
void Init_Blocks(void)
{
// initialize the block field
for (int row=0; row < NUM_BLOCK_ROWS; row++)
    for (int col=0; col < NUM_BLOCK_COLUMNS; col++)
         blocks[row][col] = row*16+col*3+16;
 
} // end Init_Blocks
 
///////////////////////////////////////////////////////////////
 
void Draw_Blocks(void)
{
// this function draws all the blocks in row major form
int x1 = BLOCK_ORIGIN_X, // used to track current position
    y1 = BLOCK_ORIGIN_Y; 
 
// draw all the blocks
for (int row=0; row < NUM_BLOCK_ROWS; row++)
    {    
    // reset column position
    x1 = BLOCK_ORIGIN_X;
 
    // draw this row of blocks
    for (int col=0; col < NUM_BLOCK_COLUMNS; col++)
        {
        // draw next block (if there is one)
        if (blocks[row][col]!=0)
            {
            // draw block     
            Rectangle(hdc,x1-4,y1+4,
                 x1+BLOCK_WIDTH-4,y1+BLOCK_HEIGHT+4);
 
            Rectangle(hdc,x1,y1,x1+BLOCK_WIDTH,
                 y1+BLOCK_HEIGHT);//,blocks[row][col]);
            } // end if
 
        // advance column position
        x1+=BLOCK_X_GAP;
        } // end for col
 
    // advance to next row position
    y1+=BLOCK_Y_GAP;
 
    } // end for row
 
} // end Draw_Blocks
 
///////////////////////////////////////////////////////////////
 
void Process_Ball(void)
{
// this function tests if the ball has hit a block or the paddle
// if so, the ball is bounced and the block is removed from 
// the playfield note: very cheesy collision algorithm :)
 
// first test for ball block collisions
 
// the algorithm basically tests the ball against each 
// block's bounding box this is inefficient, but easy to 
// implement, later we'll see a better way
 
int x1 = BLOCK_ORIGIN_X, // current rendering position
    y1 = BLOCK_ORIGIN_Y; 
 
int ball_cx = ball_x+(BALL_SIZE/2),  // computer center of ball
    ball_cy = ball_y+(BALL_SIZE/2);
 
// test of the ball has hit the paddle
if (ball_y > (SCREEN_HEIGHT/2) && ball_dy > 0)
   {
   // extract leading edge of ball
   int x = ball_x+(BALL_SIZE/2);
   int y = ball_y+(BALL_SIZE/2);
 
   // test for collision with paddle
   if ((x >= paddle_x && x <= paddle_x+PADDLE_WIDTH) &&
       (y >= paddle_y && y <= paddle_y+PADDLE_HEIGHT))
       {
       // reflect ball
       ball_dy=-ball_dy;
 
       // push ball out of paddle since it made contact
       ball_y+=ball_dy;
 
       // add a little english to ball based on motion of paddle
       if (KEY_DOWN(VK_RIGHT))
          ball_dx-=(rand()%3);
       else
       if (KEY_DOWN(VK_LEFT))
          ball_dx+=(rand()%3);
       else
          ball_dx+=(-1+rand()%3);
       
       // test if there are no blocks, if so send a message
       // to game loop to start another level
       if (blocks_hit >= (NUM_BLOCK_ROWS*NUM_BLOCK_COLUMNS))
          {
          game_state = GAME_STATE_START_LEVEL;
          level++;
          } // end if
 
       // make a little noise
       MessageBeep(MB_OK);
 
       // return
       return; 
 
       } // end if
 
   } // end if
 
// now scan thru all the blocks and see of ball hit blocks
for (int row=0; row < NUM_BLOCK_ROWS; row++)
    {    
    // reset column position
    x1 = BLOCK_ORIGIN_X;
 
    // scan this row of blocks
    for (int col=0; col < NUM_BLOCK_COLUMNS; col++)
        {
        // if there is a block here then test it against ball
        if (blocks[row][col]!=0)
           {
           // test ball against bounding box of block
           if ((ball_cx > x1) && (ball_cx < x1+BLOCK_WIDTH) &&     
               (ball_cy > y1) && (ball_cy < y1+BLOCK_HEIGHT))
               {
               // remove the block
               blocks[row][col] = 0; 
 
               // increment global block counter, so we know 
               // when to start another level up
               blocks_hit++;
 
               // bounce the ball
               ball_dy=-ball_dy;
 
               // add a little english
               ball_dx+=(-1+rand()%3);
 
               // make a little noise
               MessageBeep(MB_OK);
 
               // add some points
               score+=5*(level+(abs(ball_dx)));
 
               // that's it -- no more block
               return;
 
               } // end if  
 
           } // end if
 
        // advance column position
        x1+=BLOCK_X_GAP;
        } // end for col
 
    // advance to next row position
    y1+=BLOCK_Y_GAP;
 
    } // end for row
 
} // end Process_Ball
 
///////////////////////////////////////////////////////////////
 
int Game_Main(void *param)
{
// this is the workhorse of your game it will be called
// continuously in real-time this is like main() in C
// all the calls for you game go here!
 
char buffer[80]; // used to print text
 
// what state is the game in? 
if (game_state == GAME_STATE_INIT)
    {
    // initialize everything here graphics
//    DD_Init(SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP);
 
    // seed the random number generator
    // so game is different each play
    srand(time(0));
 
    // set the paddle position here to the middle bottom
    paddle_x = PADDLE_START_X;
    paddle_y = PADDLE_START_Y;
 
    // set ball position and velocity
    ball_x = 8+rand()%(SCREEN_WIDTH-16);
    ball_y = BALL_START_Y;
    ball_dx = -4 + rand()%(8+1);
    ball_dy = 6 + rand()%2;
 
    // transition to start level state
    game_state = GAME_STATE_START_LEVEL;
 
    } // end if 
////////////////////////////////////////////////////////////////
else
if (game_state == GAME_STATE_START_LEVEL)
    {
    // get a new level ready to run
 
    // initialize the blocks
    Init_Blocks();
 
    // reset block counter
    blocks_hit = 0;
 
    // transition to run state
    game_state = GAME_STATE_RUN;
 
    } // end if
///////////////////////////////////////////////////////////////
else
if (game_state == GAME_STATE_RUN)
    {
    // start the timing clock
//    Start_Clock();
 
    // clear drawing surface for the next frame of animation
    Rectangle(hdc,0,0,SCREEN_WIDTH-1, SCREEN_HEIGHT-1);
 
    // move the paddle
    if (KEY_DOWN(VK_RIGHT))
       {
       // move paddle to right
       paddle_x+=8;
 
       // make sure paddle doesn't go off screen
       if (paddle_x > (SCREEN_WIDTH-PADDLE_WIDTH))
          paddle_x = SCREEN_WIDTH-PADDLE_WIDTH;
 
       } // end if
    else
    if (KEY_DOWN(VK_LEFT))
       {
       // move paddle to right
       paddle_x-=8;
 
       // make sure paddle doesn't go off screen
       if (paddle_x < 0)
          paddle_x = 0;
 
       } // end if
 
    // draw blocks
    Draw_Blocks();
 
    // move the ball
    ball_x+=ball_dx;
    ball_y+=ball_dy;
 
    // keep ball on screen, if the ball hits the edge of 
    // screen then bounce it by reflecting its velocity
    if (ball_x > (SCREEN_WIDTH - BALL_SIZE) || ball_x < 0) 
       {
       // reflect x-axis velocity
       ball_dx=-ball_dx;
 
       // update position 
       ball_x+=ball_dx;
       } // end if
 
    // now y-axis
    if (ball_y < 0) 
       {
       // reflect y-axis velocity
       ball_dy=-ball_dy;
 
       // update position 
       ball_y+=ball_dy;
       } // end if
   else 
   // penalize player for missing the ball
   if (ball_y > (SCREEN_HEIGHT - BALL_SIZE))
       {
       // reflect y-axis velocity
       ball_dy=-ball_dy;
 
       // update position 
       ball_y+=ball_dy;
 
       // minus the score
       score-=100;
 
       } // end if
 
    // next watch out for ball velocity getting out of hand
    if (ball_dx > 8) ball_dx = 8;
    else
    if (ball_dx < -8) ball_dx = -8;    
 
    // test if ball hit any blocks or the paddle
    Process_Ball();
 
    // draw the paddle and shadow
/*    Rectangle(hdc,paddle_x-8, paddle_y+8, 
                   paddle_x+PADDLE_WIDTH-8, 
                   paddle_y+PADDLE_HEIGHT+8);*/
 
    Rectangle(hdc,paddle_x, paddle_y, 
                   paddle_x+PADDLE_WIDTH, 
                   paddle_y+PADDLE_HEIGHT);
 
/*   // draw the ball
    Rectangle(hdc,ball_x-4, ball_y+4, ball_x+BALL_SIZE-4, 
                   ball_y+BALL_SIZE+4);*/
    Rectangle(hdc,ball_x, ball_y, ball_x+BALL_SIZE, 
                   ball_y+BALL_SIZE);
 
    // draw the info
/*    sprintf(buffer,"F R E A K O U T           Score %d             Level %d",score,level);
    Draw_Text_GDI(buffer, 8,SCREEN_HEIGHT-16, 127);
    
    // flip the surfaces
    DD_Flip();
 
    // sync to 33ish fps
    Wait_Clock(30);*/
    Sleep(50);
 
    // check of user is trying to exit
    if (KEY_DOWN(VK_ESCAPE))
       {
       // send message to windows to exit
       PostMessage(main_window_handle, WM_DESTROY,0,0);
 
       // set exit state
       game_state = GAME_STATE_SHUTDOWN;
 
       } // end if
 
    } // end if
///////////////////////////////////////////////////////////////
else
if (game_state == GAME_STATE_SHUTDOWN)
   {
   // in this state shut everything down and release resources
//   DD_Shutdown();
 
   // switch to exit state
   game_state = GAME_STATE_EXIT;
 
   } // end if
 
// return success
return(1);
 
} // end Game_Main
 
///////////////////////////////////////////////////////////////
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
12.02.2011, 13:53  [ТС]     iostream.h #35
+c+, спасибо большое, но зачем компилятор выдает ошибку LINK : fatal error LNK1104: cannot open file "ddraw.h"... Я же все библиотечные и заголовочные файлы подключил и указал пути. Д обавил библиотеку ddraw.h но она все равно выдает ошибку.... не понимаю. Проект->Настройки->Object/Library Modules добавляю ddrae.h, потом Инструменты->Опции->Директории указываю пути на папку установки Direct SDK соответсвенно, D:\Program Files\Microsoft DirectX SDK (March 2008)\Include и D:\Program Files\Microsoft DirectX SDK (March 2008)\Lib\x86 может объяните что не так??????
+c+
112 / 22 / 3
Регистрация: 20.11.2010
Сообщений: 1,294
12.02.2011, 14:06     iostream.h #36
там не используется директХ! я его вырезал! GDI используется. У меня игра работает. Visual C++ 6
[Freeman]
34 / 34 / 6
Регистрация: 07.06.2010
Сообщений: 118
12.02.2011, 14:36     iostream.h #37
Цитата Сообщение от +c+ Посмотреть сообщение
там не используется директХ! я его вырезал! GDI используется. У меня игра работает. Visual C++ 6

Не по теме:

Можно у вас узнать, пользуетесь ли вы отладкой в Visual C++ 6 ? Если да, то какая у вас ОС ?

+c+
112 / 22 / 3
Регистрация: 20.11.2010
Сообщений: 1,294
12.02.2011, 14:46     iostream.h #38
Не

Не по теме:

не пользуюсь, та и вообще сейчас редко пишу на С++

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2011, 15:28     iostream.h
Еще ссылки по теме:

IOSTREAM.H C++
iostream C++
iostream C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Rustam
 Аватар для Rustam
11 / 11 / 3
Регистрация: 05.09.2009
Сообщений: 437
12.02.2011, 15:28  [ТС]     iostream.h #39
+с+, да я понял игра которую вы написали у меня работает, вообщем нормально, но хочется с использованием directx, а вот книжный код (оригинал) не работает..... выдает ошибку которую я уже написал, так в чем дело-то???

Добавлено через 6 минут
--------------------Configuration: jghg - Win32 Debug--------------------
Linking...
LINK : fatal error LNK1104: cannot open file "ddraw.h"
Error executing link.exe.

jghg.exe - 1 error(s), 0 warning(s)
Yandex
Объявления
12.02.2011, 15:28     iostream.h
Ответ Создать тему
Опции темы

Текущее время: 20:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru