Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка при компиляции 
:(
    Опции темы
chelovek
Дата 8.1.2006, 05:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.1.2006

Репутация: нет
Всего: нет



Ошибка при компиляции...
Изучаю с++ по Дейтлу, но в книге даются немного глючноватые примеры прог (кто-то сканировал книгу плохо). Так что приходится самому додумывать...
Использую Borland C++ Builder 6.0.

Сама прога:
Код



#include <iostream.h>
#include <time.h>
#include <stdlib.h>

int rollDice(void);

main() {
        enum Status {CONTINUE, WON, LOST};
        int sum, myPoint;
        Status GameStatus;

        srand(time(NULL)); sum = rollDice();

        switch(sum) {
          case 7:
            GameStatus = WON;
            break;
          case 12:
            GameStatus = LOST;
            break; default: {
          GameStatus = CONTINUE;
          myPoint = sum;
          cout << "I?ee: " << myPoint << endl;
          break; }   }

        while (GameStatus == CONTINUE) {
          sum = rollDice();

          if (sum == myPoint)
            GameStatus = WON;
          else
            if (sum == 7)
              GameStatus = LOST; }

        if (GameStatus == WON)
                cout << "Ea?ie auea?ae" << endl;
        else
                cout << "Ea?ie i?iea?ae" << endl;

        return 0;

        int rollDice(void);
          int diel, diel2, workSum;

          diel = 1 + rand() % 6;
          diel2 = 1 + rand() % 6;
          workSum = diel + diel2;
          cout << "A?inie ea?iea " << diel << " + " << diel2
          << " = " << workSum << endl;

          return workSum;
          return 0; }


Выдает следующие ошибки:

[C++ Warning] Unit1.cpp(45): W8066 Unreachable code
[C++ Warning] Unit1.cpp(52): W8066 Unreachable code
[Linker Error] Unresolved external 'rollDice()' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\UNIT1.OBJ


Помогите, в чем проблема?

P.S. Если у кого имеется нормальна отсканированная книга Дейтла в pdf или еще в каком-нибудь формате (или ссылка), поделитесь, плиииз.
PM MAIL   Вверх
BreakPointMAN
Дата 8.1.2006, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



Нет закрывающей фигурной скобки в конце функции main (строка 43),
нет открывающей фигурной скобки в начале функции int rollDice, вместо нее стоит точка с запятой, в результате получается не определение функции, а ее объявление... (строка 44).
Зачем в ней два return'а - тоже остается загадкой, поскольку второй никогда не будет выполнен (строка 54).
В саму прогу не вникал, может в логике какие ошибки есть...


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
tigger
Дата 8.1.2006, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 456
Регистрация: 30.4.2005

Репутация: 2
Всего: 4



Лови доработку:

Код

#pragma hdrstop

#pragma argsused
#include <iostream.h>
#include <time.h>
#include <stdlib.h>
#include <conio.h>


int rollDice(void)
{
int diel, diel2, workSum;

diel = 1 + rand() % 6;
diel2 = 1 + rand() % 6;
workSum = diel + diel2;
cout << "A?inie ea?iea " << diel << " + " << diel2
<< " = " << workSum << endl;

return workSum;
}

int main(int argc, char* argv[])
{
enum Status {CONTINUE, WON, LOST};
int sum, myPoint;
Status GameStatus;

srand(time(NULL)); sum = rollDice();

   switch(sum)
        {
          case 7:
                GameStatus = WON;
                break;
          case 12:
                GameStatus = LOST;
                break;
          default:
                {
                GameStatus = CONTINUE;
                myPoint = sum;
                cout << "I?ee: " << myPoint << endl;
                break;
                }
          }

while (GameStatus == CONTINUE)
        {
        sum = rollDice();

        if (sum == myPoint) GameStatus = WON;
        else if (sum == 7)  GameStatus = LOST;
        }

 if (GameStatus == WON) cout << "Ea?ie auea?ae" << endl;
        else cout << "Ea?ie i?iea?ae" << endl;

//притормозим прогу
int a = getch();
//__притормозим прогу

        return 0;
}


Цитата

P.S. Если у кого имеется нормальна отсканированная книга Дейтла в pdf или еще в каком-нибудь формате (или ссылка), поделитесь, плиииз.

а вот этого добра у меня не имеется... smile



--------------------
user posted image
PM MAIL   Вверх
BreakPointMAN
Дата 8.1.2006, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



tigger, совсем необязательно писать
Код

int a = getch();

можно просто
Код

getch();

smile


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
Guest
Дата 8.1.2006, 14:19 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Если книга до сих пор требуется- давай мыло- солью
  Вверх
chelovek
Дата 9.1.2006, 00:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.1.2006

Репутация: нет
Всего: нет



Всем спасибо.
А насчет книги, то буду очень благодарен.
konrad.metkalf{at}gmail.com
PM MAIL   Вверх
chelovek
Дата 10.1.2006, 00:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.1.2006

Репутация: нет
Всего: нет



Книги не будет?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1194 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.