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

[Linker error] undefined reference to 'r' - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ лабка по С++ на казахском! http://www.cyberforum.ru/cpp-beginners/thread1001443.html
надо составить прогу с помощию строки! только задание на каз языке! кто знает?? (((((Берілген сөздегі әріптердің санына байланысты '!' литерін тіркеу. (Мысалы, «УРА» жолынан «УРА!!!» жолын алу).))))))
C++ Ошибка считывания из файла динамического массива структур Строка таблицы содержит следующую информацию о первокурсниках: фамилия, имя, отчество, группа, количество баллов, набранных на вступительных экзаменах. Требуется создать перечень фамилий с указанием числа студентов с такой фамилией. Делаю ввод из файла, вывожу на экран, выводит совсем не то, что в файле, выводит число -842150451, помогите, пожалуйста, разобраться, в чем может быть моя ошибка... http://www.cyberforum.ru/cpp-beginners/thread1001419.html
Необходимо найти минимум функции C++
Необходимо а интервале с точностью Eps > 0 определить значение одного корня уравнения cos((x)/2) * sin(x) + 1 = 0 Определить минимальное значение функции на интервале . Реализовать диалог. Поиск корня уравнения осуществлять с помощью метода касательных. Моя проблема в том, что значение минимума функции всегда равно значению функции в правой границе заданного интервала. Вот сам код:...
C++ Абстрактный тип данных
Доброго времени суток! Помогите, пожалуйста, с заданием: Создать список произвольной организации. Областью данных каждого элемента является строка, содержащая название геометрической фигуры, и площадь этой фигуры. Отсортировать все элементы списка в порядке убывания по названиям фигур (длиной строки) и затем в порядке возрастания по величине занимаемой площади (имеется в виду одноименные...
C++ Найти все повторяющиеся элементы вектора http://www.cyberforum.ru/cpp-beginners/thread1001412.html
Создать программу, которая вводит c клавиатуры (с обработкой ошибок) массив целых чисел, находит в нем все повторяющиеся последовательности (1 1, 2 2 и т.д.) и заменяет каждую из них на два элемента: повторяющееся число и длину последовательности. Выдать результирующую последовательность и пары "длина - число последовательностей данной длины" Пример: вход: 1 1 1 2 2 2 2 3 4 4 4 5 5 5 выход:...
C++ написать класс на С++ восьмиугольник в круге Всем привет. Нужна ваша помощь. Нужно создать класс на С++ восьмиугольник в круге в режиме form. Кто знает, подскажите или может у когото есть уже код. Очень нужно. Буду очень благодарен. подробнее

Показать сообщение отдельно
Max Dark
В поиске работы
 Аватар для Max Dark
1546 / 1399 / 501
Регистрация: 09.10.2013
Сообщений: 3,185
Записей в блоге: 8
Завершенные тесты: 2
08.11.2013, 15:02     [Linker error] undefined reference to 'r'
Видимо это происходит из за того что локальные переменные функции main распологаются в стеке и обращаться к ним надо через смещение от начала стека

Если вынести переменные в глобальную область видимости, то следующий код собирается
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <stdlib.h>
//#include <conio.h>
#include <string.h>
#include <iostream>
 
using namespace std;
 
    int r=0;
    char s[100];
int main ()
{
    printf ("Write the numbers: \n");
    cin>>s;
//    _getch();
    asm ("Cld              ");
    asm ("       movl  r,%ebx");
    asm ("       leal  s, %edx");
    asm ("l:                   ");
    asm ("       movb  (%edx), %ah");
    asm ("       movb  %ah, r");
    asm ("       movl  r, %eax");
    asm ("       subl  $48, %eax");
    asm ("       cmpl  $57, %eax");
    asm ("       ja   m        ");
    asm ("       addl  %eax, %ebx");
    asm ("       imull $0x10, %ebx");
    asm ("       movl  $0, r");
    asm ("       addl  $0x1, %edx");
    asm ("       movl  $0, %eax");
    asm ("       loop l");
    asm ("m:                   ");
    asm ("       movl %ebx,r");
    // */
    r=r/10;
    printf("\n\nResult: %d",r);
    //_getch();
    return 0;
}
однако результат выводит неверный
 
Текущее время: 22:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru