Имея встроенную функцию, которая возвращает строку (как char *) по параметру, что было бы лучшим вариантом между предварительным распределением char * через управляемый код и передачей его параметром и выделяя char * из внутреннего кода, а затем отпустите его из C#?Как вывести строку из собственного кода
не могли бы вы любезно объяснить мне, почему я должен использовать один над другим? Пожалуйста, ответьте только в том случае, если есть определенная причина предпочитать решение по сравнению с другим. Если вместо этого решения будут в порядке, мой вопрос также может быть рассмотрен как ответ.
В качестве бонуса, я хотел бы знать, как я должен выделить переменную char * из C# в первом случае (используя класс Marshal или с простым новым или с StringBuilder, как я часто вижу в других ответах?) И как я должен удалить указатель, если вместо этого я создаю переменную char * из внутреннего кода во втором случае.
Удалите оригинал, пожалуйста. Я действительно отмечен для удаления вчера, кто-то, должно быть, восстановил его! Также у оригинала ответа не было, только один комментарий – sebas
@Flexo: с тех пор обманщик был удален, и этот вопрос, хотя и несколько «мягкий», кажется, по-теме и имеет достойный ответ. Не могли бы вы рассмотреть возможность его возобновления? –