|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.08.2014, 11:03 | #21 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Нашел вариант, 3 варианта. все рабочие. Но говорят что лучше использовать двойной snprintf() что бы точно было.
вот такой Код:
Код:
Код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
Последний раз редактировалось pompiduskus; 17.08.2014 в 11:14. |
17.08.2014, 11:41 | #22 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Второй вариант, как и третий ваще работать не должен. Там undefined behaviour.
Первый может работать, но не забудь память освободить, иначе она быстро кончится xD |
17.08.2014, 12:00 | #23 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Я вот так сделал. Проверил работает. А почему если я ' * ' не ставлю перед return, то оно мне ошибку выдает ?
Я видел два варианта удаления переменной, free() и delete() кажется. Тут наверное без разници да ? Извини что я тебя мучаю =). Код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
Последний раз редактировалось pompiduskus; 17.08.2014 в 12:37. |
17.08.2014, 12:08 | #24 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Нет, не получается скинуть память. Написано что это только для динамических переменых. А если я создал переменые методом malloc() то они такими не являются ? я же указал размер.
Или я бред несу. Совсем запутался. ===================== И переменную в виде строки тоже не получается вернуть. Звезда " *" просто ошибку не выдавала. Пробовал, по разному. Кто то пише что нужно вот так а кто то еще как. И ничего из этого не работает ! Код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
Последний раз редактировалось pompiduskus; 17.08.2014 в 12:40. |
17.08.2014, 13:13 | #25 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Цитата:
Код:
Последний раз редактировалось p51x; 17.08.2014 в 13:16. |
|
17.08.2014, 15:40 | #26 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Перепробовал, наверное все что можно! Нехера не получается. Вообще заЪЪЪся.
Прочитал наверное сто форумов. Все говорят что нужно делать вот так. Если функ. должна вернуть строку то так. У всех работает у меня нет. Да еще и ругается, мол что то ей там не нравится. Это компилер онлайн который. Мой GCC под Debian wheezy. не матерится. Единственный вариант который хоть заработатл это вот этот. Ребята помогите, что я дурак не так делаю. С маллоком без него, и так и сяк и все значения как char[] и как char* и char[]* Код:
Код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
17.08.2014, 16:07 | #27 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Это просто финиш !!!
Я хрен знает сколько часов сижу долбусь. Причина была в том что я забыл ее задикларировать или как это называется когда функцию со всеми ее параметрами но без тела прописывают в начале документа. Всем огромное спасибо! =)
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
17.08.2014, 16:58 | #28 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Все варианты которые ты пробовал неправильные.
Код:
Но когда функция завершает работу константа разрушается и функция возвращает мусор. Оно может сработать до поры до времени. Функция возвращает указатель на невыделенную область памяти, т.е. однажды комунибудь кусок этой памяти будет выделен и туда что-то будет записано. при этом твоя строка изменится. Ошибку будешь искать очень долго. Это тоже undefined behaviour короче. Если твоя программа начнет "странно работать", про проблема может быть например тут. |
17.08.2014, 17:07 | #29 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
А вот если я ее вынесу в глобальную область видемости но в самой функции буду ссылаться на extern char *res;
Тогда такой проблемы не будет ? Я думал что это проблема решилась так как я вот это прописал char *res = malloc(32); Хотя этож логично, по завершению функции этот самый char *res = malloc(32); тоже перестает существовать.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
17.08.2014, 17:14 | #30 | ||
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Цитата:
Цитата:
|
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Есть ли в delphi md5 как в lazaruse, там достаточно подключить MD5 и считать хэш? | Taner | Общие вопросы Delphi | 8 | 12.05.2014 08:38 |
код, который должен открывать файл, находить в нем определенный символ и заменять его на другой, не записывает в файл | Dima-War | Общие вопросы C/C++ | 2 | 14.12.2013 21:35 |
сохранить текстовый файл, который загружен в мемо поле (загрузка файла- есть код) Делфи 7 | программирование | Помощь студентам | 5 | 22.11.2013 07:17 |
Повторение javascript кода бесконечно! Есть код,хочу заставить его повторяться | Viboxjuwin | JavaScript, Ajax | 5 | 11.10.2013 13:46 |
Возможна ли программа на Delphi, которая генерирует текст и постит его на сайт | vindows93 | Свободное общение | 31 | 16.12.2011 22:33 |