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

strcpy - как быть? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ несколько файлов *.html открыть программно http://www.cyberforum.ru/cpp-beginners/thread353810.html
Здравствуйте, подскажите пожалуйста, имеется несколько файлов *.html, как их открыть программно, чтобы они отображались в одном Internet Explorer на разных вкладках??? Ответ есть, никто не знает как с СИ++ в ВБ(А) сделать var navOpenInBackgroundTab = 0x1000; var oIE = new ActiveXObject("InternetExplorer.Application"); oIE.Navigate2("http://blogs.msdn.com");...
C++ Односвязный список: где-то закралась ошибка Не могу найти где ошибка и всё тут, наверняка ошибка глупая и я её попросту не замечаю. Сам класс список: class List { struct element { element(string s, element *next=NULL) { http://www.cyberforum.ru/cpp-beginners/thread353809.html
C++ мне нужна помощь по курсовой работе!!!
(Делать нужно на С++) Задание такое: Задан массив натуральных чисел P. Найти минимальное натуральное число, не представимое суммой никаких элементов массива P. Сумма может состоять из одного слогаемого, но каждый элемент массива может входить в неё только 1 раз. Добавлено через 1 час 51 минуту а всё, кажись разобрался=)
C++ Двумерный массив
Доброго времени суток. Все вроде запускается но есть две проблемы, все пишет в строчку а не квадратной матрицей и не может идентифицировать "j". Не исключено что я прикрутил что то лишнее или недокрутил. /*21. Найти наибольший и наименьший элементы прямоугольной матрицы и поменять их местами. */ #include "stdafx.h" #include <stdlib.h> #include <iostream> #include <conio.h>
C++ Алгоритмы и методы http://www.cyberforum.ru/cpp-beginners/thread353790.html
Надо записать на С++(желательно Borland 5.02) алгоритмы и методы: 1.Алгоритм разделенных корней 2.Метод простых итераций 3.Метод касаемых(Ньютона) 4.На ваше усмотрение(любой метод или алгоритм).
C++ Вопрос по одномерным массивам. Всем доброго времени суток. 1. Написал код но при запуске выкидывает ошибку и условия не считает. В одномерном массиве формируемом случайно элементами как отриц. так и положит. нужно подсчитать кол-во этих элементов в отдельности. (отриц. = (), полож. = (), нулевых=()) #include "stdafx.h" #include <iostream> using namespace std; int main() { подробнее

Показать сообщение отдельно
manter
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 17

strcpy - как быть? - C++

19.09.2011, 22:11. Просмотров 2794. Ответов 36
Метки (Все метки)

Всем Доброго времени суток.
Возник вопрос.
В процессе работы над заданием, столкнулся с проблемой, которую не хватает сил обойти.
Вот Код программы:
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
#include <iostream>
#include <string>
#include<iomanip>
 
using namespace std;
 
struct worker{
    char *name;
    char *spets;
    int   razread;
    
};
 
void init(worker *w, char* Name, char* Spets, int razread){
    w->razread = razread;
    w->name = new char[strlen(Name)+1];
    w->spets = new char[strlen(Spets)+1];
    strcpy(w->name, Name);
    strcpy(w->spets,Spets);
};
    void clearmem(worker *w) {
        delete[] w->name; w->name=NULL;
        delete[] w->razread; w->razread=NULL;
        delete[] w->spets; w->spets=NULL;
    };
 
    int compare(worker* w1, worker* w2) {
        if(w1->razread>w2->razread)
                return 1;
        else
                return 0;
    };
 
    int main(void){
        int n,r,option; //kolvo i razread
        worker W[10];
        worker tmp;
        char *nName, *nSpets;
 
        nName = new char [256];
        nSpets = new char [256];
 
        while(1) {
            cout << "Menu: " << endl;
            cout << "1. Data input " << endl;
            cout << "2. Data output " << endl;
            cout << "3. Data sorting " << endl;
            cout << "4. Data fields change" << endl;
            cout << "5.Exit" << endl;
            cout << "Choose an option: " << endl;
            cin >> option;
 
            switch(option){
            case 1:
                {
                    cout << "Enter the number of workers: "  << endl;
                    cin >> n;
                    for(int i=0;i<n;i++)
                    {
                        cout << "Name: " << endl;
                        cin >> nName;
                        cout << "Spetsialinosti:"  << endl;
                        cin >> nSpets;
                        cout <<"Razread : " << endl;
                        cin >> r;
                        init(&W[i], nName, nSpets, r);
                    }
                }
                break;
            case 2:
                {
                    cout<< "Data array : " << endl;
                    for(int i=0;i<n;i++)
                    {
                        cout << " Item no. " << i+1 << endl;
                        cout << " Name: " << W[i].name;
                        cout << " Spetsialinosti: " << W[i].spets;
                        cout << " Razread: " << W[i].razread << endl;
                    }
                }
                break;
            case 3:
                {
                    for(int i=1;i<n;i++)
                    {
                        if(compare(&W[i-1],&W[i]))
                        {
                            strcpy(nName, W[i].name);
                            strcpy(nSpets, W[i].spets);
                            r=W[i].razread;
                            clearmem(&W[i]);
                            init(&W[i], W[i-1].name, W[i].razread);
                            clearmem(&W[i-1]);
                            init(&W[i-1], nName, nSpets, r);
                        }
                        else break;
                    }
                }
                break;
            case 4:
                {
                    long i;
                    cout << "Enter the index of the item to be changed:"<<endl;
                    cin >> i;
                    cout << "Enter the new Name : " <<endl;
                    cin >> nName;
                    cout << "Enter the new spetsialinosti : "  <<endl;
                    cin >> nSpets ;
                    cout << " Enter the new razread: "  <<endl;
                    cin >> r;
 
                    init(&W[i-1],nName,nSpets,r);
                }
                break;
case5:
    {
        for(int i=0;i<n;i++)
        {
            clearmem(&W[i]);
        }
        return 1;
    }
    break;
            default:
                {
                    cout << "Wrong menu item chosen! Try again, please."<<endl;
                }
            }
        }
        delete [] nName; nName = NULL;
        delete [] nSpets; nSpets = NULL;
        cout << "Done !" << endl;
        return 1;
    };
Проблема в том, что компилятор кричит на "strcpy"... Как быть?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru