Задание:Структура с именем TRAIN поля: -название пункта назначения; -номер поезда; -время отправления Способ обработки – вывод на дисплей результата сравнения: верно ли ,что названия пунктов назначения совпадают у двух поездов Как можно изменить код?
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
struct TRAIN {
char *name;
int number;
float time;
};
void inTrain(TRAIN *train) {
cout <<"Введите данные: "<<endl;
cout <<"Пункт назначения: "<<endl;
train->name = new char[25];
cin >>train->name;
cout <<"Номер поезда: "; cin >>train->number;
cout <<"Время отправлени: "; cin >>train->time;
}
void outTrain(TRAIN *train) {
cout <<"Пункт назначения: "<<train->name<<endl<<"Номер поезда: "<<train->number<<endl<<"Время отправления: "<<train->time<<endl;
}
int main() {
TRAIN tr1,tr2,*train1, *train2;
train1 = &tr1;
train2 = &tr2;
int num;
while (1) {
cout << "Выберите действие: " <<endl<< "1 - Ввод данный" <<endl<< "2 - Вывод данных" <<endl<< "3 - Обработка" <<endl<< "4 - Выход" << endl;
cin >> num;
switch(num) {
case 1: inTrain(train1);
inTrain(train2);
break;
case 2: outTrain(train1);
outTrain(train2);
break;
case 3: if (tr1.name == tr2.name) cout <<"True"<<endl;
else cout<<"False"<<endl;
break;
case 4: return 0;
}
}
return 0;
}
tr1.name == tr2.name
Ну не сравнивают так строки... Вы проверяете, не один ли и тот же адрес у name
в tr1
и tr2
...
if (strcmp(tr1.name,tr2.name) == 0) { ... }
Вот это - сравнение строк, а не адресов.
Или сравнивать так
case 3: if (strcmp(tr1.name,tr2.name)==0)
или, что лучше, заменить тип на string.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть программа, которая в цикле сравнивает строки, всё в ней работает, но в итоге превышается тайм лимит на 0,001 - 0,007 секундыРешил с каждой итерацией...
Имеется адрес в котором хранится строка в UTF-16Вопрос как ее нормально считать в массив char с помощью ReadProcessMemory? Я пытался вот так:
Здравствуйте, у меня есть бинарный файл где находятся int значения, каждый из которых занимает 4 байтаЯ хочу с помощью данной структуры пройти...