[in] Количество элементов массива для копирования. Определяет длину результатной строки.
По умолчанию -1, что означает копирование до конца массива, либо до встречи терминального 0.
Терминальный 0 также будет скопирован в массив-приемник,
при этом размер динамического массива может быть увеличен при необходимости под размер строки.
Если размер динамического массива больше длины строки, то размер массива уменьшен не будет.
автоматика прогресса )) что больше запутывает пользователя.
A100:
А как практик объяснит теоретикам такой противоречивый результат:
Результат: 4:0
Ожидалось: 0:0
или тоже - чуть подправить документацию? Ну не исправлять же баги в конце концов!
У меня объяснение простое: в одной из этих штатных функций баг - и я даже знаю в какой
2021.05.2502:08:33.329 Test (AUDUSD,M1) StringToCharArray 32021.05.2502:08:33.329 Test (AUDUSD,M1) ch[] ABC
2021.05.2502:08:33.329 Test (AUDUSD,M1) GetLastError0
Но если будете передавать в count 0, то автоматом скопируется вся строка с завершающим нулём. Даже если строка пустая, то скопируется завершающий ноль.
Но если будете передавать в count 0, то автоматом скопируется вся строка с завершающим нулём. Даже если строка пустая, то скопируется завершающий ноль.
А в StringToShortArray почему по-другому? Только коротко пожалуйста по возможности объясните без хитростей и непонятных ссылок на Ваши прошлые гениальные объяснения (которые в итоге оказались несостоятельными) - по простому - для чайника
без ; ) и прочих неуместных в данной теме символов
А в StringToShortArray почему по-другому? Только коротко пожалуйста по возможности объясните без хитростей и непонятных ссылок на Ваши прошлые гениальные объяснения (которые в итоге оказались несостоятельными) - по простому - для чайника
без ; ) и прочих неуместных в данной теме символов
2021.05.2503:10:07.696 Test (AUDUSD,M1) StringToShortArray32021.05.2503:10:07.696 Test (AUDUSD,M1) sh[] ABC
2021.05.2503:10:07.696 Test (AUDUSD,M1) GetLastError0
А почему count 0 не срабатывает, этого не знаю. Наверно эта хитрая автоматика на count 0 тут не срабатывает, и согласно справки, это уже несоответствие. И наверно ошибка.
требуется чистое копирование (без завершающих нулевых символов)
Это очень бородатая конструкция.
ЗЫ
Немного подправить документацию и уже не баг.
Философия далека от практики.
А как практик объяснит теоретикам такой противоречивый результат:
Результат: 4:0
Ожидалось: 0:0
или тоже - чуть подправить документацию? Ну не исправлять же баги в конце концов!
У меня объяснение простое: в одной из этих штатных функций баг - и я даже знаю в какой
А как практик объяснит теоретикам такой результат:
У меня объяснение простое: в одной из этих функций баг - и я даже знаю в какой
Багом является несоответствие этих двух функций, а не их результат, т.к. это только вопрос документации, что выдавать при count=0.
Багом является несоответствие этих двух функций, а не их результат, т.к. это только вопрос документации, что выдавать при count=0.
нет, есть еще такая штука как принцип единообразия. баг очевиден. если вы не понимаете почему это баг, это уже исключительно ваши проблемы.
Багом является несоответствие этих двух функций, а не их результат, т.к. это только вопрос документации, что выдавать при count=0.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
Roman, 2021.05.07 22:07
Тут вся хитрость в описании к функции ))
автоматика прогресса ))
что больше запутывает пользователя.
А как практик объяснит теоретикам такой противоречивый результат:
Результат: 4:0
Ожидалось: 0:0
или тоже - чуть подправить документацию? Ну не исправлять же баги в конце концов!
У меня объяснение простое: в одной из этих штатных функций баг - и я даже знаю в какой
После этого Разработчики уже исправляли, поэтому Ваше предыдущее объяснение не годится
Функции одинаковые (отличаются только типом, фактически шаблон), описание одинаковое (перекрестные ссылки даже есть), а результат разный
Там уже Разработчики исправляли, поэтому Ваше предыдущее объяснение не годится
Что именно исправляли?

Всегда было так, как в документации.
А вы проверяли, что было исправлено? ))
Исправили, сплит как вы хотели.
3 символа к примеру
Но если будете передавать в count 0, то автоматом скопируется вся строка с завершающим нулём.
А StringLen() не возвращает завершающий ноль ))Даже если строка пустая, то скопируется завершающий ноль.
Что именно исправляли?
Но если будете передавать в count 0, то автоматом скопируется вся строка с завершающим нулём.
Даже если строка пустая, то скопируется завершающий ноль.
А в StringToShortArray почему по-другому? Только коротко пожалуйста по возможности объясните без хитростей и непонятных ссылок на Ваши прошлые гениальные объяснения (которые в итоге оказались несостоятельными) - по простому - для чайника
без ; ) и прочих неуместных в данной теме символов
А в StringToShortArray почему по-другому? Только коротко пожалуйста по возможности объясните без хитростей и непонятных ссылок на Ваши прошлые гениальные объяснения (которые в итоге оказались несостоятельными) - по простому - для чайника
без ; ) и прочих неуместных в данной теме символов
Сплит работает
А почему count 0 не срабатывает, этого не знаю.
Наверно эта хитрая автоматика на count 0 тут не срабатывает, и согласно справки, это уже несоответствие.
И наверно ошибка.
Короче, или тут ошибка, что на count 0 не срабатывает,
или ошибка в StringToCharArray, что на count 0, срабатывает.
Чтобы вы понимали, состоятельность объяснений, изучите основы Си языка, и особенно работу со строками.
И тогда не будет вопросов.
Короче, или тут ошибка, что на count 0 не срабатывает,
или ошибка в StringToCharArray, что на count 0, срабатывает.
Гениально!