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

Учебное расписание: Unresolved externals - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создание и вывод двумерного массива http://www.cyberforum.ru/cpp-beginners/thread17082.html
Здравствуйте, помогите пожалуйста написать программку на С++. Необходимо ввести с клавиатуры размеры матрицы, затем рандомно сгенерировать элементы этой матрицы и вывести ее на экран. Значения от 0...
C++ Определить находятся ли данные прямые в общем положении Просьба решить или хотя бы подсказать как можно начать решать такую "простенькую"задачу: Прямая на плоскости может быть задана уравнением ax+by+c=0,где a и b одновременно не равны нулю. Пусть... http://www.cyberforum.ru/cpp-beginners/thread17074.html
C++ Vector
Помогите пожалуйста решить задачу при помощи STL. Дан вектор. Нужно найти максимальное количество подряд идущих нулей. без использования циклов.
C++ Проверить, являются ли данные числа С и D соответственно квадратом и кубом числа А
Составить алгоритм, печатающий значение "Истина" если указанное высказывание является истинным, и "Ложь" в противном случае: данные числа С и D являются соответственно квадратом и кубом числа А. ...
C++ Шифрование содержимого текстового файла http://www.cyberforum.ru/cpp-beginners/thread17047.html
Нужно составить функцию, которая шифрует содержимое заданного текстового файла (например предложение в файле: "Текст из файла"). Нужно заменить каждый символ текста порядковым но*мером первого...
C++ Задача на строки Не знаю как подступиться к задаче,а надо сделать очень срочно,помогите!!! Задана запись из букв,количество букв кратно N.Всего в записи M слов.Длинна слова N.Составить структурированную программу... подробнее

Показать сообщение отдельно
Artyom
0 / 0 / 0
Регистрация: 30.11.2008
Сообщений: 10
08.12.2008, 05:44  [ТС]
Спасибо, oxotnik! Наконец-то откомпилировалось.
Возникла другая проблема: программа запускается,выдает надпись "Constructor...", а потом выдается такая ошибка: Unhandled exception at 0x1022f64e (msvcr80d.dll) in lab3.exe: 0xC0000005: Access violation reading location 0xcccccccc. Это из-за неправильного выделения памяти под динамический массив? Что неправильно?

Добавлено через 15 часов 53 минуты 0 секунд
Я попробовал добавить меню переделать все почти заново, но у меня снова не получилось =/
Книга Страуструпа ничем не помогла, очень сложно там находить необходимую иформацию, поскольку я плохо ориентируюсь в предмете.
Вот мой код:
Заголовковый файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Studies{
        unsigned int SIZE;
        int number_w;
        char day[4]; //строка - день недели (sun,mon,tue,wed,thu,sat)
        int number_s;
        char *name;
        Studies *ptr;
    public:
    Studies(int cnumber_w,char[4] cday,int cnumber_s,char *cname);//конструктор инициализации
    Studies(const Studies &r);//конструктор копирования
    Studies(){};
    ~Studies();//деструктор
    void Change(void);
    void Show(void);
    void Menu(void);
    };
функция main:
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
#include "lab4.h"
#include <iostream>
using namespace std;
int main()
{   char c;
    char flag;
    Studies studies(1,"mon",1,"oop");
    studies.Show();
for(;;)
{
    Studies::Menu();
    cin>>flag;
    switch ( flag )
    {
    case '1': studies.Change();
    case '2': studies.Show();
    case '3': break;
    default: cout<<"Try again\n";
        Studies::Menu();
    }
}   
    
    return 0;
}
файл с методами
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
#include "lab4.h"
//#include <stdio.h>
#include <iostream>
using namespace std;
 
 
Studies::Studies(int cnumber_w, char cday[4], int cnumber_s,char *cname)
{       cout<<"Constructor...\n";
        ptr = new Studies[256];
        number_w = cnumber_w;
        cday = Studies::day;
        number_s = cnumber_s;
        cname = Studies::name;
}
Studies::Studies(const studies& right)//конструктор копирования
{
    s = new char[right->SIZE];
    strcpy(Studies::name,right->Studies::name);
}
 
Studies::~Studies()
{
    delete[] ptr;
}
void Studies::Change(void)
{
        do
    {
        printf("Input correct week number of studies: ");
        cin>>number_w;
        
    } while ((number_w>30)||(number_w<1));
        do
    {
        printf("Input correct day of studies (sun/mon/tue/wed/thu/fri/sat): ");
        cin>>day;
        
    } while ((strcmp(day,"sun")!=0)&&(strcmp(day,"mon")!=0)&&(strcmp(day,"tue")!=0)&&(strcmp(day,"wed")!=0)&&(strcmp(day,"thu")!=0)&&(strcmp(day,"fri")!=0)&&(strcmp(day,"sat")!=0));
    do
    {
        printf("Input correct day number of studies: ");
        cin>>number_s;
    } while ((number_s<1)||(number_s>6));
    do  
    {
        printf("Input correct name of studies: ");
        cin>>name;
 
            
    } while (1 == 0);
};
 
void Studies::Show(void){   
    cout<<'\n';
printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n",
       0xc9,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xcb,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xcb,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xcb,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xbb);
printf("%c   Number   %c       Day       %c   Day Number  %c     Name      %c\n",0xba,0xba,0xba,0xba,0xba,0xba);
printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n",
       0xcc,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xce,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xce,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xce,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xb9);
printf("%c%12d%c%17s%c%15d%c%15s%c\n",0xba,number_w,0xba,day,0xba,number_s,0xba,name,0xba);
printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n",
       0xc8,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xca,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xca,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,
       0xca,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xcd,0xbc);
cout<<'\n';
//  return 0;
};
 
void Studies::Menu(void)
{
    printf("+---------------------+\n");
    printf("| Make your choice:   |\n");
    printf("|                     |\n");
    printf("|1. Change data       |\n");
    printf("|                     |\n");
    printf("|2. Show              |\n");
    printf("|                     |\n");
    printf("|3. Exit              |\n");
    printf("+---------------------+\n");
    printf("->");
}
Помогите, пожалуйста, разобраться, а то я не знаю с какой стороны его начать исправлять. Чем больше читаю и исправляю, тем больше путаюсь.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru