Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/65: Рейтинг темы: голосов - 65, средняя оценка - 4.65
3 / 3 / 0
Регистрация: 14.10.2013
Сообщений: 87

Символ конца массива char

02.11.2013, 18:40. Показов 12330. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток!

В книге Стефана Девиса "С++ для чайников" (страница 86) были затронуты массивы. Пусть существует такой массив...
C++
1
char szA[] = "abc"
Будет ли конец массива (szA[3]) инициализирован нулевым символом, то есть символом, которому соответствует код 0x0?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.11.2013, 18:40
Ответы с готовыми решениями:

Ввести с клавиатуры символ (в переменную char) и определить, соответствует ли введенный символ 'Q' или 'q'
1)Ввести с клавиатуры символ (в переменную char) и определить, соответствует ли введенный символ 'Q' или 'q' (использовать логический...

В чем отличие двумерного массива типа char от массива указателей на char?
В чем отличие двумерного массива типа char и массива указателей на char ?

Проверка конца строки и переменной char.
Не когда не приходилась работать со строами. Прошу помощи как определить конец строки?

9
~ Эврика! ~
 Аватар для OhMyGodSoLong
1258 / 1007 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
02.11.2013, 18:41
Да.
1
3 / 3 / 0
Регистрация: 14.10.2013
Сообщений: 87
02.11.2013, 18:46  [ТС]
А будет ли любой массив вне зависимости от типа данных оканчивать на нулевой символ?
0
 Аватар для Anton_Kretov
89 / 51 / 15
Регистрация: 26.06.2013
Сообщений: 179
02.11.2013, 18:50
Цитата Сообщение от RareScrap Посмотреть сообщение
А будет ли любой массив вне зависимости от типа данных оканчивать на нулевой символ?
Окончательный элемент - 0 будет только в массиве символов, массивы остальных типов данных оканчиваются последним элементом массива.
1
3 / 3 / 0
Регистрация: 14.10.2013
Сообщений: 87
02.11.2013, 18:57  [ТС]
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
Окончательный элемент - 0
Насколько я знаю, код обычного нуля 0x30. Под нулем вы имели ввиду символ с кодом 0x0?
0
Диванный эксперт
Эксперт С++
 Аватар для Max Dark
2550 / 2064 / 971
Регистрация: 09.10.2013
Сообщений: 4,793
Записей в блоге: 4
02.11.2013, 19:13
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
Окончательный элемент - 0 будет только в массиве символов, массивы остальных типов данных оканчиваются последним элементом массива.
и то в массиве символов он будет по умолчанию только если мы инициализируем его строкой с-формата
Но в большинстве случаев конец строки нужно устанавливать в ручную.

Добавлено через 1 минуту
Цитата Сообщение от RareScrap Посмотреть сообщение
Насколько я знаю, код обычного нуля 0x30. Под нулем вы имели ввиду символ с кодом 0x0?
он имел (char)0
скорее всего

Добавлено через 1 минуту
код '0' и 0 разные вещи
0
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
02.11.2013, 19:16
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
Окончательный элемент - 0 будет только в массиве символов,
фиг вам в строке
вот так будет
C++
1
char a[]="aaa";
вот так нет
C++
1
char a[]={'a','a',a'};
строка это не просто массив символов это массив символов с завершающим 0
разница в кавычках ' 'символ " " строка

Добавлено через 1 минуту
Цитата Сообщение от RareScrap Посмотреть сообщение
Насколько я знаю, код обычного нуля 0x30. Под нулем вы имели ввиду символ с кодом 0x0
да
и записывается в тексте он так '\0'
0
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
02.11.2013, 19:18
Цитата Сообщение от RareScrap Посмотреть сообщение
А будет ли любой массив вне зависимости от типа данных оканчивать на нулевой символ?
Терминальный ноль ('\0') должен присутствотать в массивах char, которые обрабатываются, как строки стиля С. Функции, которые обрабатывают такие строки (strlen(), strcpy(), printf() и пр.), по терминальному нолю, определяют конец такой строки.
0
~ Эврика! ~
 Аватар для OhMyGodSoLong
1258 / 1007 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
02.11.2013, 19:18
Цитата Сообщение от RareScrap Посмотреть сообщение
А будет ли любой массив вне зависимости от типа данных оканчивать на нулевой символ?
Нет. Очевидно, массив заканчивается на то, на что заканчивается его инициализатор. Это как раз "строки" заканчиваются нулевым символом, не массивы.
0
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
02.11.2013, 19:19
Цитата Сообщение от RareScrap Посмотреть сообщение
Будет ли конец массива (szA[3]) инициализирован нулевым символом, то есть символом, которому соответствует код 0x0?
не будет
поскольку ноль не влезет размер массива 3 и буквы 3, нулю деваться некуда
а в szA[4] будет 3 символа плюс 0
но при такой записи
C++
1
char szA[] = "abc"
образуется массив из 4х символов
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.11.2013, 19:19
Помогаю со студенческими работами здесь

Символ конца строки
помогите пожалуйста, пишу программу в Линуксе, не распознаётся '\n'... вот например когда посимвольно перебираю строку и дохожу до конца,...

Не считывается символ конца строки
Доброго времени суток. У меня проблема в том, что дан файл f.txt, там написан текст в несколько строк, надо считать по 5 сиволов, заменить...

Как определить символ конца строки
Всем доброго времени суток! Работаю в VS2012 Такая задача - работаю со строками. Считываю файл (построчно функцией getline). И мне...

Определить символ конца строки в TextBox
VS2012 Разрабатываю текстовый редактор. Функция: проверка на числа. Проверяет, есть ли в тексте не(цифры, пробелы, "-"), если...

Esc как символ конца ввода
Доброго времени суток. Есть такой вопрос. Как мне закончить ввод при нажатии esc. Например, если пользователь вводит некий текст (через cin...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru