| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > не инициализированный элемент массива |
| Автор: Oik741 30.11.2009, 22:23 |
| Добрый день всем, массив, в него задаётся строка, через функцию идёт проверка на принадлежность всех элементов массива к русским/латинским буквам верхнего/нижнего регистра через ASCII код. массив char name[20] задаётся через cin >> name; я ввожу допустим "Клава" и функция говорит что пятый эл-т у меня не прошёл проверки, а пятый эл-т это char[6] тоесть не инициализированная переменная, как мне сделать проверку на это? |
| Автор: smoke_man 30.11.2009, 22:45 |
| Проверь на 0x00('\0') - это завершение строки. |
| Автор: Cheloveck 30.11.2009, 23:03 | ||
Пятый элемент это char[4] (хотя, наверное, ты имел введу name[4]). Добавлено через 4 минуты и 9 секунд Ну, а вообще, smoke_man, правильно сказал
|
| Автор: djamshud 30.11.2009, 23:18 |
| Правильнее наверное с '\0' сравнивать. Есть ли гарантия, что всегда 0=='\0' ? |
| Автор: Cheloveck 30.11.2009, 23:25 |
| djamshud, да, есть |
| Автор: Oik741 30.11.2009, 23:27 | ||
спасибо всем, реализовал вот так
|
| Автор: Cheloveck 30.11.2009, 23:36 | ||||
Зачем per1? Да и приводить надо в таком случае наобарот
Добавлено через 1 минуту и 4 секунды Да и не надо вообще в этом случае. |