Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Прирывание процесса нажатием на кнопку на c# Есть форма с 2-мя кнопками. 1-я кнопка - запуск абстрактного процесса, а 2-я его прирывание. После запуска на выполнение кнопка "Стоп" не доступна. Как сделать так, что бы 2-я кнопка была доступна для нажатия одновременно с 1-й(для своевременного прирывания процесса), а не поставлена в очередь на выполнение после 1-й (иначе форма просто виснет до выполнения поставленной задачи) ? https://www.cyberforum.ru/ cpp-beginners/ thread711682.html БЕЗ использования библиотечных функций C++
Помогите написать программу... Написать программу, которая (без использования библиотечных функций для обработки строк), копировала бы строчку введенную пользователем с клавиатуры в новую (максимальная длина строки - 80 символов). При этом в процессе копирования должны отбрасываться все незначительные пробелы в начале и конце строки, а также несколько подряд идущих пробелов должны заменяться на...
C++ Массив и указатели. Вывести на экран весь массив и на отдельной строке - значение минимального элемента массива Нужна помощь, не знаю как сделать это задание. Написать программу, которая создает массив из 10 случайных целых чисел из отрезка . Вывести на экран весь массив и на отдельной строке - значение минимального элемента массива. Для обхода массива использовать указатели (запрещено обращаться к элементам массива по индексам). https://www.cyberforum.ru/ cpp-beginners/ thread711678.html C++ Функция _atold() не работает Здравствуйте! Такая проблема. Не могу понять как работает функция _atold(), в задании указано что необходимо её использовать, однако она не работает. Компилятор её идентифицирует. Еще хочу отметить, что задача идет в учебнике до темы "указатели", следовательно решить её необходимо не используя оные. Задание не суть, суть в том, что значение массива char необходимо перевести в long double, что... https://www.cyberforum.ru/ cpp-beginners/ thread711672.html
C++ Нужно с помощью показателей большее, меньше, и среднее арифметическое двух чисел, которые генерируются компьютером.
Нужно с помощью показателей большее, меньше, и среднее арифметическое двух чисел, которые генерируются компьютером. Буду очень благодарен за помощь.
C++ freeglut, MinGW https://www.cyberforum.ru/ cpp-beginners/ thread711653.html
Не получается мне в IDE работать. Прочитал несколько туториалов, не помогло Сделал, все, как тут указано. Скачал freeglut-2.8.0 для MinGW, закинул либы, инклюды, дллки, последние даже в C:\Windows и C:\SysWow64 пихнул. при компиляции даю папку со своим установленным mingw. Сборка проекта - fail. ||=== Test2, Debug ===| ld.exe||cannot find -lfreeglut| ||=== Build finished: 1 errors, 0...
C++ Ошибка в коде В ходе выполнения работы необходимо создать программу, которая определяет и инициализирует двумерный массив целых значений и затем выполняет следующие действия: • преобразование исходного массива в соответствии с индивидуальным заданием (функция1); • вывод результатов (функция2). В функици1 реализовать передачу параметра по ссылке. Если массив удалось преобразовать – функция1 должна возвращать... https://www.cyberforum.ru/ cpp-beginners/ thread711646.html Копирование содержимого текстового файла C++
Программа копирует этот файл три раза. В первый раз одна использует буфер стандартного размера, затем увеличивает размер буфера в десять раз, и, наконец, копирует файл без использования механизма буферизации. Каждый раз программа измеряет продолжительность копирования файла с помощью функции clock(). Не могу понять. Программа все время выдает сообщение: "Введите имя входного файла!"....
C++ Магический квадрат Задача: Написать программу, которая определяет, явдяется ли заданная целочисленная квадратная матрица порядка N 'магическим квадратом', т.е. такой, в которой суммы элементов во всех строках и столбцах одинаковы. Сама программа: #include "stdafx.h" #include <iostream> #include <iomanip> const int n=100, e=100; using namespace std; int main() { https://www.cyberforum.ru/ cpp-beginners/ thread711630.html C++ Работа с файлами. Преобразование char в int https://www.cyberforum.ru/ cpp-beginners/ thread711627.html
Дан символьный файл f. В файле f не менее двух компонентов. Определить, являются ли два первых символа цифрами. Если да, то установить, является ли число, образованное этими цифрами, четным. с первой частью задания вроде справился, но не могу преобразовать char в int. вот то что я смог #include "stdafx.h" #include <iostream> #include <fstream> #include <cstdlib> #include <stdlib.h>
C++ Ограничить ввод букв либо цифр в компонент Edit C++
Как сделать чтоб в компонент Edit можно было вводить только буквы,либо же только цифры?Или как сделать,чтоб при вводе букв в поле цифр,выводилось сообщение об ошибке и наоборот?
C++ Сортировка в списке. Запутался с укахателями https://www.cyberforum.ru/ cpp-beginners/ thread711621.html
Задание: создать список с записями автомабилей, отсортировать по
2 / 2 / 0
Регистрация: 25.11.2012
Сообщений: 76
28.11.2012, 05:27  [ТС] 0

Класс String - C++ - Ответ 3766464

28.11.2012, 05:27. Показов 1505. Ответов 3
Метки (Все метки)

Ответ

Croessmah, а почему так получается? я например ввёл 10. в цикле I - 1 - а значит будет 9 итераций и элементы массива с 0 до 8 проинициализируются 'A' (проинициализируется 9 элементов). потом STR[I] = '\0'; в последнюю ячейку записываем '\0'. Я немного запутался, как это сделать другим способом? или что тут поменять, чтобы работало на 5+ ? заранее спасибо, просто целый день учёба.. и сейчас мозги не фурычат

Добавлено через 4 минуты
Я сделал вот так:
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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
/*Разработать класс String, который в дальнейшем будет использоваться для работы со строками.
Класс должен содержать: 
* конструктор по умолчанию, позволяющий создать строку длиной 80 символов; 
* конструктор, позволяющий создавать строку произвольного размера; 
* конструктор, который создаёт строку и инициализирует её строкой, полученной от пользователя. 
класс должен содержать методы для ввода строк с клавиатуры и вывода строк на экран.*/
 
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <string.h>
#include <windows.h>
using namespace std;
 
HANDLE H = GetStdHandle(STD_OUTPUT_HANDLE);
 
class String
{
private:
    char * STR;
public:
    String()
    {
        STR = new char [80]; 
    }
    String(int I)
    {
        if(I < 2){I = 10;}
        STR = new char[I];
        cout<<"Успешно выделена память под массив из "<<I<<" элементов!\n\n";
        for(int i = 0; i < I - 1; i++)
        {
            STR[i] = 'A';
        }
        STR[I-1] = '\0';
    }
    String(int csize, char * s)
    {
        STR = new char[csize];
        strcpy(STR, s);
        OemToAnsi(STR,STR);
    }
    void Show()
    {
        cout<<"Строка: "<<STR<<endl<<endl;
    }
    void Input()
    {
        strcpy(STR, "\0");
        cout<<"Введите строку: ";
        gets(STR);
        system("cls");
        OemToAnsi(STR,STR);
    }
    ~String()
    {
        if(STR)
        {
            cout<<"Деструктор успешно отработал!\n\n";
            cout<<"Массив символов: \""<<STR<<"\" успешно удалён!\n\n";
            delete [] STR;
        }
    }
};
 
void Stand(int x, int y, int key, char*str)
{
    CONSOLE_CURSOR_INFO ci; ci.bVisible=0; ci.dwSize=100; SetConsoleCursorInfo(H,&ci);
    COORD c;
    c.X = x; c.Y = y;
    SetConsoleCursorPosition(H,c);
    SetConsoleTextAttribute(H,key);
    cout<<str<<"\n";
}
 
int main()
{
    system("mode con cols=30 lines=10");
    system("title String");
    setlocale(LC_ALL,"RUS");
 
    String s;
 
    Stand(5,1,10,"FAQ о задании \"String\"");
    Stand(5,3,2,"Произвольная строка");
    Stand(5,5,2,"Создать строку");
    Stand(5,7,2,"Выход");
 
    int key; 
    int punkt = 1;
 
    while(1)
    {
        key = getch();
        if(key == 80)
        {
            if(punkt < 4)
            {
                punkt++;
                if(punkt == 2)
                {
                    Stand(5,1,2,"FAQ о задании \"String\"");
                    Stand(5,3,10,"Произвольная строка");
                }
                else if(punkt == 3)
                {
                    Stand(5,3,2,"Произвольная строка");
                    Stand(5,5,10,"Создать строку");
                }
                else if(punkt == 4)
                {
                    Stand(5,5,2,"Создать строку");
                    Stand(5,7,10,"Выход");
                }
            }
        }
        else if(key == 72)
        {
            if(punkt > 1)
            {
                punkt--;
                if(punkt == 3)
                {
                    Stand(5,5,10,"Создать строку");
                    Stand(5,7,2,"Выход");
                }
                else if(punkt == 2)
                {
                    Stand(5,3,10,"Произвольная строка");
                    Stand(5,5,2,"Создать строку");
                }
                else if(punkt == 1)
                {
                    Stand(5,1,10,"FAQ о задании \"String\"");
                    Stand(5,3,2,"Произвольная строка");
                }
            }
        }
        else if(key == 13)
        {
            system("cls");
            SetConsoleTextAttribute(H,15);
            if(punkt == 1)
            {
                system("title FAQ о задании \"String\"");
                system("mode con cols=43 lines=23");
                SetConsoleTextAttribute(H,10);
                cout<<"\n  Разработать класс String, который в \n  дальнейшем будет использоваться для \n\t работы со строками.\n\n";
                SetConsoleTextAttribute(H,14);
                cout<<"\tКласс должен содержать:\n\n";
                SetConsoleTextAttribute(H,15);
                cout<<" - конструктор по умолчанию, позволяющий \n   создать строку длиной 80 символов.\n\n"
                    <<"      - конструктор, позволяющий \n  создавать строку произвольного размера.\n\n"
                    <<"  - конструктор, который создаёт строку и \n  инициализирует её строкой, полученной от \t\tпользователя.\n\n"
                    <<"   - методы для ввода строк с клавиатуры \n        и вывода строк на экран.\n\n";
                SetConsoleTextAttribute(H,11);
            }
            else if(punkt == 2) 
            {
                system("title String произв. размера");
                system("mode con cols=55 lines=30");
                int size;
                cout<<"Под какое кол-во элементов выделить память? "
                    <<"                                            Включая \'\\0\'\n";
                cin>>size;
                system("cls");
                String obj(size);
                obj.Show();
            }
            else if(punkt == 3) 
            {
                system("title Создание и инициализация строки");
                system("mode con cols=55 lines=30");
                String A(200, " ");
                A.Input();
                int choise;
                cout<<"Строка успешно записана в массив!\n\n";
                cout<<"Вывести строку на экран?\n\n"
                    <<"1. Да\n"
                    <<"2. Нет, выйти.\n";
                cin>>choise;
                if(choise==1)
                {
                    system("cls");
                    A.Show();
                }
                else if(choise==2){exit(0);}
                else
                {
                    system("cls");
                    cout<<"Ошибочный ввод, до свидания!!!\n\n";
                }
            }
            else if(punkt == 4)
            {
                DWORD size=1024;
                char buf[1024];
                GetUserNameA(buf, &size); 
                SetConsoleTextAttribute(H,11);
                system("mode con cols=30 lines=6");
                SetConsoleTextAttribute(H,14);
                system("title До свидания!");
                cout<<"   До свидания ув. "<<buf<<endl<<endl<<"   ";
                SetConsoleTextAttribute(H,11);
            }
            else 
            {
                cout<<"До свидания!\n\n";
                getch();
            }
            exit(0);
        }
    }
}
Добавлено через 21 секунду
Croessmah, спасибо

Вернуться к обсуждению:
Класс String C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2012, 05:27
Готовые ответы и решения:

Здравствуйте! Создал класс std::string. Не создается объкт типа string... Подскажите в чем причина?
#include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; //using namespace std; class...

Реализовать пользовательские типы: класс Person и класс String
1)Разработать класс Person, который содержит соответствующие члены для хранения: имени, ...

Класс String
Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые...

Класс string
Добрый день, друзья. #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main...

3
28.11.2012, 05:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2012, 05:27
Помогаю со студенческими работами здесь

Класс String
вот файл реализации String::String() //конструктор на 80 { size = 80; str = new char; ...

Класс String
добрый день. У кого-то есть программа которая создаёт класс String – строку, используя динамическую...

класс String
//main #include &lt;iostream&gt; #include &quot;header.h&quot; const int ArSize = 10; const int MaxLen =81;...

класс string
товарищи,пишу лабу,простенькую,в принципе,но почему-то фэйлюсь. в ведённой строке за один просмотр...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru