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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Run Time Check Failure 
V
    Опции темы
Kirgston
Дата 22.9.2009, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Всем доброго времени суток! Возник вопросик... собственно писал лабораторную для института... что то не допонял =)

Код

#include <iostream>
#include <windows.h>
#include <stdio.h>

using std::cout;
using std::cin;
using std::endl;



void main()
{
    char str[50]={0};
    int digit=0;
    int sum=0;
enter:
    CharToOem("Введiть число ряду Фiбоначчi яке необхiдно знайти: ",str);
    cout<<endl<<str;
    cin>>digit;
    if (digit<3)
    {
        CharToOem("Число має бути більше 3ох!",str);
        goto enter;
    }

    for ( ;digit>0;digit--)
        sum+=digit;
    CharToOem("Число ряду Фiбоначчi: ",str);
    cout<<endl<<str<<sum<<endl;
    system("pause");
}


Интересно то что под РАД студио 2010 всё хорошо. А под Вижуал С++ вылетает еррор мол Run Time Check Failure #2 - Stack around the variable 'str' was corupted . Какой стек?  smile разве я что то заношу тут в стек?))
PM MAIL   Вверх
NightmareZ
Дата 22.9.2009, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


[хакер]
**


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

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



Цитата(Kirgston @  22.9.2009,  10:30 Найти цитируемый пост)
разве я что то заношу тут в стек?))


Массив у тебя на стеке. Представляешь? А вы то и не знали!  smile 


--------------------
NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш
Ely-Art.ru - наша маленькая домашняя арт-студия
mugcraft.ru - кружки на любой вкус
PM WWW ICQ Skype GTalk AOL YIM   Вверх
ller
Дата 22.9.2009, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



1. Текстовая строка длиннее 50 символов
Код

  CharToOem("Введiть число ряду Фiбоначчi яке необхiдно знайти: ",str);

2. Это никогда не выведется. И потом goto  использовать не рекомендуется, только в крайних случаях
Код

        CharToOem("Число має бути більше 3ох!",str);
        goto enter;


3. Как то странно smile
Код

   cout<<endl<<str;


по моему так будет лучше
Код

   cout<<str<<endl;


Это сообщение отредактировал(а) ller - 22.9.2009, 10:38
PM MAIL   Вверх
Kirgston
Дата 22.9.2009, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(ller @  22.9.2009,  10:34 Найти цитируемый пост)
Текстовая строка длиннее 50 символов

А на взляд я бы не сказал)))))))))
Но спасибо помогло =)

PM MAIL   Вверх
bsa
Дата 22.9.2009, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Kirgston, забудь, пожалуйста, об операторе goto, тебе еще рано им пользоваться. В данном случае можно использовать do { ... continue; ... } while(0);
PM   Вверх
Kirgston
Дата 23.9.2009, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(bsa @  22.9.2009,  17:48 Найти цитируемый пост)
Kirgston, забудь, пожалуйста, об операторе goto, тебе еще рано им пользоваться. В данном случае можно использовать do { ... continue; ... } while(0);

Спасибо за совет =)

Просто я курсовую на АСМе писал... а там же нету всяких там... do while, for,while,и т.д. и вообще ничего толкового нету (MCS - 51) вот и весь курсак у меня был построен на call & jmp(в разных интерпритациях), да и не один курсак :Р всё что делал на асм (лабораторные за половину групы  smile ) писал именно так =)
PM MAIL   Вверх
bsa
Дата 23.9.2009, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Kirgston, причем тут ассемблер? Я тоже в профессионально владею ассемблером Z80 (работа у меня такая), в котором тоже нет ни while, ни for, и что? Это же мне не мешает избегать goto на Си/С++.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

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

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

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

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


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

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


 




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


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

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