![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Ufyljy |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 5.10.2007 Репутация: нет Всего: 1 |
Программа компилируется Если рассказать: Программа проверяет - считается ли первый элемент строки =1, если да, то выдает "бессмысленное выражение", если нет - это уже другая история.. Самое главное, что после этого в конце задается вопрос: хотите ли еще ввести число? Допустим, да, вводим число =1. НО программа не выдает "бессмысленное выражение", ПАЧЕММУУУ? |
|||
|
||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
| Goganchic |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 678 Регистрация: 18.6.2004 Репутация: нет Всего: 5 |
может быть ты имел ввиду:
|
||||
|
|||||
| Ufyljy |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 5.10.2007 Репутация: нет Всего: 1 |
> потому что ты этого не запрограммировал.
Конкретней |
|||
|
||||
| S.A.G. |
|
||||||||||
![]() не эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1339 Регистрация: 20.7.2006 Где: in ad equate Репутация: нет Всего: 19 |
Если пытаешься считать строку, то адрес определять ненужно т.к. имя массива является адресом его первого элемента. Неправильно:
Правильно:
Условие составлено неверно:
Правильно:
Окончательный вариант работающей программы:
Это сообщение отредактировал(а) S.A.G. - 20.10.2007, 19:20 -------------------- Вот она задачка: спасти себя от себя самого © Cube Sometimes good people do evil things © A Simple Plan |
||||||||||
|
|||||||||||
| S.A.G. |
|
|||
![]() не эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1339 Регистрация: 20.7.2006 Где: in ad equate Репутация: нет Всего: 19 |
Не забывай возвращать 0, если в определении или прототипе у тебя заявлено, что функция возвращает значение.
-------------------- Вот она задачка: спасти себя от себя самого © Cube Sometimes good people do evil things © A Simple Plan |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Тут всё правильно. А вот здесь ошибка. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| S.A.G. |
|
|||
![]() не эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1339 Регистрация: 20.7.2006 Где: in ad equate Репутация: нет Всего: 19 |
У меня второе компиллируется, а первое - нет.
В чем ошибка? Сгораю от любопытства, если честно. Это сообщение отредактировал(а) S.A.G. - 20.10.2007, 19:43 -------------------- Вот она задачка: спасти себя от себя самого © Cube Sometimes good people do evil things © A Simple Plan |
|||
|
||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Плохой компилятор: см. ISO/IEC 14882:2003 2.5 Alternative tokens. У меня такое тоже компилируется
Только это ещё не означает корректность. Как уже сказал Daevaorn, ошибка в том, что используешь побитовое "или", а не логическое. В частности, в случае с логическим "или" совсем не нужны скобки вокруг сравнений point == 'y'. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| S.A.G. |
|
|||
![]() не эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1339 Регистрация: 20.7.2006 Где: in ad equate Репутация: нет Всего: 19 |
А, || надо было.
Круглые скобки - это елемент стиля. Т.е. как кому удобно. -------------------- Вот она задачка: спасти себя от себя самого © Cube Sometimes good people do evil things © A Simple Plan |
|||
|
||||
| Ufyljy |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 5.10.2007 Репутация: нет Всего: 1 |
Все равно не работает (уже исправил (k==1) ). Если повторно набираю "1", происходит выход из программы.
Почему это правильно? scanf("%s", mill); Ведь если даже я укажу адрес, ошибки не будет, компилятор ее не выдаст. А если это и правильно, я до этого создавал темы, и в коде, который я там выкладывал, где-то было scanf("%s",&mill); И почему меня до этого никто не поправил? > Не забывай возвращать 0, если в определении или прототипе у тебя заявлено, что функция возвращает значение. Стоп, к сожалению я не знаю где это заявляется. Насколько я знаю оператор && можно заменить на AND, оператор || на OR |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
||||
|
||||
| archimed7592 |
|
||||||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Компилятор не выдаст ошибки даже, если ты напишешь scanf("%s", 21, 17);
В данном конкретном случае никакой разницы нет, но если, вдруг, ты заменишь у mill тип на char *, то получишь не совсем тот результат, какой хотел бы...
Только писать их нужно маленькими буквами. Почему? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
||||||
|
|||||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
А зачем превращать С в свой личный язык программирования, сделать так конечно можно, но это плохо с точки зрения стиля.
Почему? |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |