Описание тега null-terminated
A string that ends with (and does not include) a "null" (ASCII 0) byte, as used by the C language
3
ответа
Обрабатывать нулевой терминатор как обычный символ в C
Я хочу скопировать все символы в символе [] в другой символ []. Однако, предположим, что есть '\0', тогда я хочу рассматривать его как нормальный символ - литерал, если хотите. Поэтому, когда я распечатываю char[] с указателем формата%s, он не долже…
21 сен '14 в 17:05
1
ответ
Расщепление строки в C с помощью нулевого терминатора
В настоящее время я пытаюсь реализовать программу, которая принимает файл, читает файл и копирует его содержимое в массив (farray). После этого мы копируем содержимое farray в виде строк, разделенных нулевыми терминаторами, в массив строк с именем s…
02 мар '16 в 20:48
2
ответа
С ++ завершенный массив объектов с нулевым символом
Я пытаюсь создать массив объектов с нулевым символом в конце, как этот void Game::createCreatures(int numCreatures) { creatures = new Creature *[numCreatures + 1]; for (int i = 0; i <= numCreatures; i++) { if(i < numCreatures) { creatures[i] =…
15 ноя '14 в 00:29
2
ответа
Как бороться с буферизованными строками из C в Swift?
Я работаю с синтаксическим анализатором libxml2 для чтения больших XML-файлов. Большинству обработчиков обратного вызова предоставляется указатель на символ NULL с завершением. С помощью String.fromCString они могут быть преобразованы в обычную стро…
19 дек '15 в 15:33
3
ответа
Как использовать SHFileOperation() с путями CString
Я пытаюсь конвертировать CString в LPCWSTR и это работает хорошо. Но что-то пошло не так при обработке кода. Я хочу скопировать каталог по другому пути, поэтому я использую SHFILEOPSTRUCT: HWND console = GetConsoleWindow(); SHFILEOPSTRUCT s = { 0 };…
21 сен '18 в 09:48
7
ответов
3
ответа
Концы std::strings заканчиваются на '\0' при инициализации строковым литералом?
Я знаю, что строковые объекты не заканчиваются нулем, но почему это должно работать? std::string S("Hey"); for(int i = 0; S[i] != '\0'; ++i) std::cout << S[i]; Таким образом, конструктор также копирует нулевой терминатор, но не увеличивает дли…
21 ноя '16 в 09:17
4
ответа
strstr() для строки, которая НЕ заканчивается на ноль
Как мне сделать на месте эквивалент strstr() для подсчитанной строки (то есть, не заканчивающейся нулем) в C?
21 дек '11 в 03:11
8
ответов
Как записать в массив char символ с нулевым завершающим символом?
Какой правильный и самый безопасный способ запоминать весь массив символов с завершающим нулем символом? Я могу перечислить несколько случаев: ... char* buffer = new char [ARRAY_LENGTH]; //Option 1: memset( buffer, '\0', sizeof(buffer) ); //Option 2…
17 окт '12 в 13:43
2
ответа
Представление строки C в памяти и сравнение
У меня есть такой код: char str1[100] = "Hel0lo"; char *p; for (p = str1; *p != 0; p++) { cout << *p << endl; /* skip along till the end */ } и есть некоторые части, неясные для меня. Я понимаю, что строка с нулевым символом в памяти явл…
31 май '13 в 10:42
2
ответа
Python заменяет '\0' в строке на ноль
В настоящее время я сталкиваюсь со странной проблемой. Я хочу заменить '\0' в строках на 'null' и прочитать многие форумы и всегда видел один и тот же ответ: text_it = "request on port 21 that begins with many '\0' characters, preventing the affecte…
10 авг '18 в 08:22
2
ответа
Преобразование потока памяти с нулевым символом в конце в строку Юникода
В Delphi XE я собираю данные CF_UNICODETEXT из буфера обмена. Результатом является поток, который заканчивается двумя нулевыми байтами. Чтобы получить фактическую строку, которая была скопирована в буфер обмена, мне нужно удалить нули. Этот похожий …
19 янв '11 в 17:39
2
ответа
Добавление дополненного числа как QString в QByteArray приводит к появлению нежелательного символа
У меня есть QByteArray которая содержит телеграмму в специальном формате, которая затем отправляется через UDP на удаленный компьютер для дальнейшей обработки. я использую QByteArray::append() собрать телеграмму. Одним из компонентов телеграммы явля…
02 ноя '17 в 08:54
0
ответов
c - перезаписывающий символ перехода на новую строку с нулевым терминатором вызывает segfault
Так что у меня есть строка с несколькими escape-последовательностями новой строки. Я хотел бы вырезать строку до первых n строк, как в программе head из coreutils. Например, скажем, у меня есть строка "a\nb\nc\n", я бы хотел, чтобы первая строка был…
13 июн '18 в 04:35
4
ответа
Безопасно ли вводить строку, в которой нет места для нулевого терминатора?
Рассмотрим следующий код: const char foo[] = "lorem ipsum"; // foo is an array of 12 characters const auto length = strlen(foo); // length is 11 string bar(length, '\0'); // bar was constructed with string(11, '\0') strncpy(data(bar), foo, length); …
10 янв '19 в 16:03
3
ответа
Самый чистый способ преобразовать ненулевую завершающую строку c в завершающую строку c
У меня есть некоторые унаследованные функции, которые возвращают ненулевые завершающие строки. struct legacy { char a[4]; //not null terminated char b[20]; //not null terminated }; Я много раздаю эти массивы символов и мне нужен чистый способ конвер…
28 мар '16 в 17:43
9
ответов
Почему строки в C должны заканчиваться нулем?
Просто интересно, почему это так. Мне не терпится узнать больше о языках низкого уровня, и я разбираюсь только в основах C, и это уже сбивает меня с толку. Языки, такие как PHP, автоматически обнуляют строки, когда они интерпретируются и / или анали…
08 фев '10 в 11:49
1
ответ
Как функция std::string c_str() возвращает завершающуюся нулем строку?
Я не могу понять, если char *, возвращенный из string.c_str(), указывает на тот же буфер (и не делает никакой копии), как это завершается нулем? функция добавляет нулевой терминатор в конце строки? и что будет, если в буфере нет лишних байтов для ег…
13 июн '18 в 09:22
7
ответов
Отключение NUL-завершения строк в GCC
Можно ли глобально отключить строки с NUL-окончанием в GCC? Я использую свою собственную библиотеку строк, и у меня нет абсолютно никакой потребности в конечных символах NUL, поскольку она уже хранит надлежащую длину внутри структуры. Тем не менее, …
20 ноя '09 в 17:32
2
ответа
Как завершаются строки с нулевым символом в C++11?
Может быть, это глупо или очевидно, но я не смог найти ни одного ответа. Какой символ заканчивается строкой с нулевым символом в конце C++11? NULL (что на самом деле 0) или новый nullptr? С одной стороны, nullptr должен заменить NULL, С другой сторо…
16 мар '14 в 23:22