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

undefined reference хотя всё дефайнед - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить, сколько раз чило встречается в массиве http://www.cyberforum.ru/cpp-beginners/thread788703.html
Написать программу, которая вычисляет, сколько раз введенное с клавиатуры число встречается в массиве. Массив генерируется случайными числами от 0 до 10 и выводится на экран. #include<iostream> #include <Windows.h> #include <time.h> using namespace std; void main() {
C++ Указатели. Необработанное исключение в "0x77c015de" ": 0x00000000: Операция успешно завершена Добрый день. Очередной вопрос про уже набившие всем оскомину указатели. Задача простая: Реализовать создание структуры, структурной переменной, указателя на структуру, и их дальнейшее использование в зависимости от варианта задания. Необходимо создать структуру, элементами которой являются фамилия автора книги и ее название. Объявить массив данных типа структуры и ввести значения его... http://www.cyberforum.ru/cpp-beginners/thread788699.html
C++ Функция не видит выделенной памяти под глобальные переменные
При решении задачи с алгоритмом поиска в глубину возникла проблема: описание переменных происходит над п/п алгоритма, выделение памяти под них происходит в программе, а при вызове п/п она "не видит" выделенной памяти, из за чего обращается к несуществующему элементу, и происходит ошибка: vector<bool> iterator not derefencable. Что с этим можно сделать? #include "stdafx.h"...
Написать программу (сумму первых n целых положительных четных чисел), объясните, что значит каждая строка! C++
Написать программу, которая вычисляет сумму первых n целых положительных четных чисел. Количество суммируемых чисел должно вводиться во время работы программы. Вычисление суммы четных положительных чисел. Введите количество суммируемых чисел и нажмите <Enter> -> 12 Сумма первых 12 положительных четных чисел равна 156
C++ Использование функций при работе с двумерными массивами http://www.cyberforum.ru/cpp-beginners/thread788680.html
Дана прямоугольная вещественная матрица . Обнулить все четные столбцы и нечетные строки. В полученной матрице отсортировать по возрастанию каждую строку, оставляя нули на своих местах.
C++ обращения к указателям Написать обращения к указателям в глобальной,локальной и охватывающей сетях. подробнее

Показать сообщение отдельно
Jeremen1
 Аватар для Jeremen1
0 / 0 / 0
Регистрация: 24.09.2012
Сообщений: 58
17.02.2013, 22:12     undefined reference хотя всё дефайнед
Всем доброго времени суток. В С++ я новичёк, помогите пожалуйста разобраться в чём проблема.
Есть файл functions.h
Вот его содержимое
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
#ifndef FUNCTION_H
#define FUNCTION_H
 
void parse_exp(char str[], float *operand1, float *operand2, char *operation);
float calculate(int operand1, int operand2, char operation);
 
#endif // FUNCTION_H

Также есть файлы functions.cpp и main.cpp
functions.cpp
Кликните здесь для просмотра всего текста
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
#include <stdio.h>
#include <string.h>
#include "functions.h"
 
#define MAX_LENGTH 50
 
void parse_exp(char* str[], float* operand1, float* operand2, char* operation) {
    int i = 0;
    char op1[MAX_LENGTH] = "";
    char op2[MAX_LENGTH] = "";
    int op_pos = -1;
 
    while (str[i] != NULL) {
        if (strcmp(str[i], "+") == 0 || strcmp(str[i], "-") == 0 || strcmp(str[i], "*") == 0 || strcmp(str[i], "/") == 0) {
            operation = str[i];
            op_pos = i;
        }
        if (op_pos == -1) {
            strcat(op1, str[i]);
        } else if (op_pos != -1) {
            strcat(op2, str[i]);
        }
        i++;
    }
    operand1 = reinterpret_cast<float*>(op1);
    operand2 = reinterpret_cast<float*>(op2);
}

main.cpp
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include "functions.h"
 
using namespace std;
 
int main(int argc, char *argv[])
{
    char expression[50] = "5+12";
    float* operand1;
    float* operand2;
    char* operation;
 
    parse_exp(expression, operand1, operand2, operation);
 
    return 0;
}

В итоге при компиляции получаю следующее.
undefined reference to `parse_exp(char*, float*, float*, char*)'
Вложения
Тип файла: rar lab3.rar (2.9 Кб, 4 просмотров)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru