|
Вариант для распечатки |
Пред. тема | След. тема | ||
Форумы Программирование под UNIX (Public) | |||
---|---|---|---|
Изначальное сообщение | [Проследить за развитием треда] |
"Интерфейс printf" | |
Сообщение от ghost_in_machine on 17-Янв-06, 19:42 | |
Здравствуйте! | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
Оглавление |
|
Сообщения по теме | [Сортировка по времени, UBB] |
2. "Интерфейс printf" | |
Сообщение от veslo (ok) on 17-Янв-06, 23:42 | |
man va_arg | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
3. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 18-Янв-06, 13:58 | |
Спасибо, veslo. | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
4. "Интерфейс printf" | |
Сообщение от Аноним on 18-Янв-06, 16:28 | |
>Есть ли какой-нибудь другой способ передать в функцию произвольный набор параметров без указаний их типов? | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
5. "Интерфейс printf" | |
Сообщение от Brick (??) on 19-Янв-06, 01:09 | |
>компилятор то знает сколько параметров передают в конкретном вызове | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
6. "Интерфейс printf" | |
Сообщение от Forth (??) on 19-Янв-06, 09:09 | |
>компилятор С ничего не знает про количество аргументов, переданных функции | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
7. "Интерфейс printf" | |
Сообщение от tilde on 19-Янв-06, 09:26 | |
>>компилятор С ничего не знает про количество аргументов, переданных функции | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
8. "Интерфейс printf" | |
Сообщение от Forth (??) on 19-Янв-06, 09:39 | |
>Не знает. Стек очищает вызывающая функция. Поэтому вызванная функция может даже не | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
9. "Интерфейс printf" | |
Сообщение от ACCA (ok) on 19-Янв-06, 12:05 | |
>>Не знает. Стек очищает вызывающая функция. Поэтому вызванная функция может даже не | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
10. "Интерфейс printf" | |
Сообщение от Forth (??) on 19-Янв-06, 12:31 | |
> "компилятор С ничего не знает про количество аргументов, переданных | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
11. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 19-Янв-06, 12:57 | |
Спасибо всем за инфу. У меня возник вопрос по стеку. Если узнать адрес конца стека то функция типа f(int num,void** stack) будет именно тем что нужно. А можно ли в С узнать адрес стека? Будет ли это &num в принимающей функции? | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
12. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 19-Янв-06, 13:00 | |
>Спасибо всем за инфу. У меня возник вопрос по стеку. Если узнать | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
13. "Интерфейс printf" | |
Сообщение от Brick (??) on 19-Янв-06, 14:39 | |
>>Спасибо всем за инфу. У меня возник вопрос по стеку. Если узнать | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
14. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 19-Янв-06, 15:29 | |
Спасибо Brick. Стандартные решения выглядят более запутанными. Я только немного не понял, возможен ли вариант каких-то пробелов между объектами из одного вызова или гарантированно они будут идти друг за другом согласно своим размерам. В ваших ссылках была пара туманных слов о запутанности структуры стека при работе современных компиляторов... | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
15. "Интерфейс printf" | |
Сообщение от Brick (??) on 19-Янв-06, 15:51 | |
аргументы в стеке будут идти подряд, один за одним а для разбора параметров существует два класических приема: | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
16. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 19-Янв-06, 16:07 | |
А что произойдет со стеком (его конкретным участком, содержащим параметры), если я вызову другую функцию внутри обработчика стека? Будут ли адреса стека и его элементов все еще валидными? И еще, как мне передать адрес стека в другую функцию, через void* или есть вариант для "три точки" -> "три точки" напрямую? | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
17. "Интерфейс printf" | |
Сообщение от Brick (??) on 19-Янв-06, 16:41 | |
>А что произойдет со стеком (его конкретным участком, содержащим параметры), если я вызову другую функцию внутри обработчика стека? Будут ли адреса стека и его элементов все еще валидными? | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
18. "Интерфейс printf" | |
Сообщение от Brick (??) on 19-Янв-06, 16:48 | |
>А что произойдет со стеком (его конкретным участком, содержащим параметры), если я вызову другую функцию внутри обработчика стека? Будут ли адреса стека и его элементов все еще валидными? | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
19. "Интерфейс printf" | |
Сообщение от ghost_in_machine on 19-Янв-06, 17:00 | |
Спасибо всем (и Brick особенно), теперь понятно. | |
Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх |
Архив | Удалить |
Индекс форумов | Темы | Пред. тема | След. тема |
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |