Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка: undeclared identifier 
:(
    Опции темы
kolhozniypunk
Дата 17.7.2008, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Visual C++ 6.0
При использовании циклов For, while пишет ошибку undeclared identifier, в чём дело?
PM MAIL   Вверх
mes
Дата 17.7.2008, 17:38 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


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

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



Цитата(kolhozniypunk @  17.7.2008,  17:28 Найти цитируемый пост)
Visual C++ 6.0
При использовании циклов For, while пишет ошибку undeclared identifier, в чём дело? 

проблема в строчке номер 17,  smile 
после for за круглой скобкой, перед i надо добавить слово int
т.е. for (int i=0; i<10; ++i) {..}

P.S. просьба: приводите, пожалуйста, участок кода, чтоб видно было о чем речь.. 


Это сообщение отредактировал(а) mes - 17.7.2008, 17:40


--------------------
PM MAIL WWW   Вверх
kolhozniypunk
Дата 17.7.2008, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Код

#include<iostream.h>
void main()
{
    
    static b[3] = { {12},{14},{16} };
    int a;
    a=1;
    While (a<4);
    {
        cout<<b[a];
        a++;
    }
    
}

Код любой, просто при использовании for`a или While`a.
PM MAIL   Вверх
Annihilator
Дата 17.7.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


bytegrinder
**


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

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



Вот так надо
Код

#include<iostream.h>
void main()
{
    int a=1;
    static b[3] = {12,14,16};
    while (a<4)
    {
        cout<<b[a];
        a++;
    }
    

}


1. while надо писать с маленькой буквы
2. после while не надо двоеточие, иначе не будет циклиться то, что ниже у тебя в скобках

Это сообщение отредактировал(а) Annihilator - 17.7.2008, 19:32


--------------------
Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо
PM ICQ   Вверх
kolhozniypunk
Дата 17.7.2008, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо, С чувствителен к регистру?
PM MAIL   Вверх
Annihilator
Дата 17.7.2008, 20:19 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


bytegrinder
**


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

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



Цитата(kolhozniypunk @  17.7.2008,  23:41 Найти цитируемый пост)
С чувствителен к регистру?

Очень!!!


--------------------
Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо
PM ICQ   Вверх
anatox91
Дата 17.7.2008, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

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



Цитата(Annihilator @ 17.7.2008,  19:31)
Вот так надо
Код

#include<iostream.h>
void main()
{
    int a=1;
    static b[3] = {12,14,16};
    while (a<4)
    {
        cout<<b[a];
        a++;
    }
    

}


1. while надо писать с маленькой буквы
2. после while не надо двоеточие, иначе не будет циклиться то, что ниже у тебя в скобках

так тоже еще не до конца правильно, разве разрешаются декларации без типа?
Цитата

static b[3] = {12,14,16};



--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
Annihilator
Дата 18.7.2008, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


bytegrinder
**


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

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



Цитата(anatox91 @  18.7.2008,  01:08 Найти цитируемый пост)
так тоже еще не до конца правильно, разве разрешаются декларации без типа?

хм... конечно нет. Надо тип еще указать  smile 


--------------------
Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо
PM ICQ   Вверх
Djinn
Дата 18.7.2008, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



А не надо писать
Код

std::*
//например
std::cout<<"";

??? ведь там namespace... по моему тоже обязательно указать или до 
Код

using std::cout;
 или потом везде раставлять std::... smile 

Это сообщение отредактировал(а) Djinn - 18.7.2008, 13:18
PM MAIL   Вверх
bsa
Дата 18.7.2008, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

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



Djinn, если честно, я не понял, что ты своим сообщением хотел сказать.
А код я бы переписал так:
Код
#include<iostream>

int main() //main() должна возвращать int
{
    static const int b[] = {12, 14, 16}; //нужно указать тип массива, если он не меняется, то можно добавить const
                 //размерность его можно убрать, чтобы компилятор сам ее вычислил
    //префиксная форма оператора ++ предпочтительней в большинстве случаев
    for(int i = 0; i < sizeof(b)/sizeof(b[0]); ++i) { //так как sizeof(b) == 3 * sizeof(int), то 3 == sizeof(b) / sizeof(int)
        std::cout << b[i];
    }
    return 0; //в случае успеха, main() возвращает 0
}

PM   Вверх
Annihilator
Дата 18.7.2008, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


bytegrinder
**


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

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



Цитата(Djinn @ 18.7.2008,  17:11)
А не надо писать
Код

std::*
//например
std::cout<<"";

??? ведь там namespace... по моему тоже обязательно указать или до 
Код

using std::cout;
 или потом везде раставлять std::... smile

Какие неймспейсы, там старая библиотека юзается
Код

#include<iostream.h>



Это сообщение отредактировал(а) Annihilator - 18.7.2008, 18:38


--------------------
Если вы не можете сделать хоpошyю пpогpаммy, сделайте, чтобы она по кpайней меpе выглядела хоpошо
PM ICQ   Вверх
anatox91
Дата 18.7.2008, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

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



у меня было сначала ощущение что это - код на Си (не С++)


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

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

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

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

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


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

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


 




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


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

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