6 / 6 / 5
Регистрация: 13.02.2016
Сообщений: 147
1

Ошибка в инструкции else

22.06.2019, 15:36. Показов 1112. Ответов 3
Метки нет (Все метки)

ошибка:
indexer.cpp: In function ‘int main()’:
indexer.cpp:10:1: error: ‘else’ without a previous ‘if’
else {cout<<"Error"<<endl;};

код:
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using std::string;using std::cin;using std::cout;using std::endl;
 
int main() {string box;int number=0;
cout<<"Please text"<<endl;
getline(cin,box);
cout<<"Input index"<<endl;
cin>>number;
if (number<box.size()) {box[number]=toupper(box[number]); cout<<box<<endl;};
else cout<<"Error"<<endl;
return 0;}
в чём тут ошибка?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2019, 15:36
Ответы с готовыми решениями:

Как возможно выйти в инструкции switch в начало самой инструкции при нажатии "не правильной" кнопки
В целом у меня вопрос такой: Как возможно выйти в инструкции switch в начало самой инструкции при...

Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции.
Доброго времени суток. Есть дизассемблированный код. Нужно засунуть код иструкции в 4 чара так,...

Что такое блоки и инструкции, вложенные инструкции и главные инструкции?
Что это такое?

Ошибка в инструкции
Program perevodCC; const zn:string='01234567'; function DecToOct(n:longint):string; var...

3
5791 / 3212 / 1327
Регистрация: 07.02.2019
Сообщений: 8,108
22.06.2019, 15:40 2
Лучший ответ Сообщение было отмечено zerkalo как решение

Решение

Цитата Сообщение от zerkalo Посмотреть сообщение
в чём тут ошибка?
точка с запятой в самом конце 9 строки
0
6 / 6 / 5
Регистрация: 13.02.2016
Сообщений: 147
22.06.2019, 16:00  [ТС] 3
спасибо, заработало.

как-то не очень логично(либо совсем не логично), на мой взгляд работает компилятор(g++) в этом плане.
0
17103 / 9124 / 2234
Регистрация: 30.01.2014
Сообщений: 15,907
22.06.2019, 16:46 4
zerkalo, ну начинается Компилятор работает так, как сказано в стандарте C++.

Точка с запятой завершает в С++ некоторые виды statements.
Отдельная точка с запятой в языках С и С++ представляет собой empty expression statement. А compound statements, которым является блок после if, не завершаются точками с запятой никогда. Поэтому ваш код воспринимается компилятором так:
C++
1
2
3
4
5
6
7
8
if (number<box.size()) // selection statement if
{ // compound statement
   box[number] = toupper(box[number]);  // expression statement
   cout << box << endl; // expression statement
} // end of compound statement
; // empty expression statement
else // error ( else statement без if statement )
   cout << "Error" << endl;
Изучайте: https://en.cppreference.com/w/... statements
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.06.2019, 16:46
Помогаю со студенческими работами здесь

Ошибка инструкции INSERT INTO
Форумчане, подскажите в чем ошибка синтаксиса: Private Sub Кнопка342_Click() DoCmd.RunSQL...

Ошибка в инструкции Update
День добрый. ни как не могу понять где ошибка в запросе :wall: CurrentProject.Connection.Execute...

Ошибка синтаксиса в инструкции INSERT INTO
При нажатии на кнопку выдает ошибку &quot;Ошибка синтаксиса в инструкции INSERT INTO&quot; Ссылаясь на...

Ошибка синтаксиса инструкции INSERT INTO
Пишу свою курсовую работу, это интерфейс для БД ACCESS. Написала половину кода, везде работал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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