Форум программистов, компьютерный форум CyberForum.ru

Как перенести параметры из ф-ции printf() в самодельную - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Распечатать список учеников музыкальной школы, которые учатся играть на скрипке http://www.cyberforum.ru/cpp-beginners/thread312657.html
Распечатать список учеников музыкальной школы, которые учатся играть на скрипке. Указать также, сколько лет они занимаются музыкой и принимали ли участие в каких-либо конкурсах.
C++ Две задачи СТЕК в динамической памяти Здраствуйте уважаемые программисты помогите пожалуйста решить две задачи: 1.Дан файл содержащий текст на русском языке. Файл считывается в СТЕК в динамической памяти. Найти и вывести в другой файл все слова, в которых гласные буквы образуют неубывающую последовательность символов. Один символ не считается неубывающей последовательностью. 2.Например: заметить (а – е - и), добро (о-о) …... http://www.cyberforum.ru/cpp-beginners/thread312651.html
C++ 0xчисло
0x - это десятичная система исчисления? И как это называется, когда пишут int a = 0x5? Как правильно это(0x) называется? Какие выглядят другие системы исчисления?
как из вектора удалить отрицательные числа C++
Создать вектор, заполнить его случайными целыми числами в интервале от -10 до 10. Вывести в ListBox. Затем удалить из него все отрицательные элементы и вывести еще раз вектор в ListBox. moja programma vector<int>vec; srand(time(NULL)); for(int i=0,i!=10,i++){ int a=rand()%20-10; vec_push_back(a); listBox1->item->Add(vec);}
C++ строки. что-то тут не так http://www.cyberforum.ru/cpp-beginners/thread312607.html
вот код //Программа удаления из строки символов '0..9' #include<iostream> // заголовыочный файл с описаниями функций ввод\вывод #include<conio.h> // заголовочный файл для создания текстового интерфейса в режиме MS-DOS #include <string> // заголовочный файл для класса string int main() {
C++ Оператор " :: " (Двойное двоеточие) Доброй ночи! Расскажите пожалуйста что нибудь про этот оператор, и чем он отличается от других операторов подобного предназначения, то есть, в чем его особенность. Заранее благодарен.=) подробнее

Показать сообщение отдельно
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,268
Записей в блоге: 2
Завершенные тесты: 1
29.05.2013, 17:17
Цитата Сообщение от Evg Посмотреть сообщение
По полученным результатам хорошо видны те слоты, о которых я писал выше
Конкретно в данном случае (Linux 64) думаю дело в другом. Дело в том, что в long mode нет команды, которая толкает в стек 32 бита, т.е. если написать
Assembler
1
push eax
то будет ошибка компиляции. Так уж устроен этот режим, что в стек можно толкнуть только 16 или 64 бита. Поэтому при передаче аргументов на стеке int просто "расширился" до 64 бит, поэтому мы видим нули в х2 и х4.
Думаю вот так мы увидим то, что хотели
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void func (int fake0, int fake1, int fake2, int fake3,
           int fake4, int fake5, int fake6, int fake7,
           int x1, ...)
{
  int x2, x3, x4;
  int *p = &x1;
 
  x2 = *(p + 2);
  x3 = *(p + 4);
  x4 = *(p + 6);
 
  printf ("x1 = %x\n", x1);
  printf ("x2 = %x\n", x2);
  printf ("x3 = %x\n", x3);
  printf ("x4 = %x\n", x4);
}
сейчас сижу под 32 битной виндой, поэтому не могу проверить.

Цитата Сообщение от Evg Посмотреть сообщение
хорошо видны те слоты
Не уверен, что правильно понял смысл слова "слот". Может это то, про что я написал выше? Мне кажется это немного другое.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru