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

[Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ - C++

Восстановить пароль Регистрация
 
Hexter
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 5
19.11.2013, 22:57     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ #1
понять не могу откуда, собственно, ошибка, да что там. Вот код
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
40
41
42
43
44
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include <time.h>
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
void Sort(int, int);
int main(int argc, char* argv[])
{
        int In[10], Out[10];
        randomize();
        for (int i = 0; i<10; i++)
        {
                In[i] = random(101)-25;
                printf("In[%d]=%d\t", i, In[i]);
        }
Sort(In[10], Out[10]);
         for(int i = 0; i<10; i++) printf("\nOut[%d] = %d", i, Out[i]);
 
         getch();
         return 0;
}
        void Sort(int A[], int B[])
        {
                int min = 100, min_i;
                for (int j = 0; j<10; j++)
                {
                        min = 100;
                        min_i=0;
                        for (int i = 0; i < 10; i++)
                                if (min > A[i]){ min = A[i];min_i=i; }
                        B[j] = min;
                        A[min_i] = 100;
                }
        }
//---------------------------------------------------------------------------
заранее спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
newbie666
Заблокирован
19.11.2013, 23:09     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ #2
Цитата Сообщение от Hexter Посмотреть сообщение
void Sort(int, int);
ну ты сверху объявляешь прототип функции void Sort(int, int); , которая принимает в качестве агрументов две переменные типа int, дальше в main ты пытаешься её использовать, передавая в неё два массива типа int, это уже не верно, и в третьих - ты внизу пишешь реализацию функции тоже с двумя массивами. Короче говоря, поправь сверху прототип void Sort(int, int); на Sort(int A[], int B[]), иначе линкер видит прототип, а реализации не видит, т.к. у тебя её нет - по этому и пишет, что найдет не решённый внешний символ...

Добавлено через 3 минуты
хотя в 26-1 строчке Sort(In[10], Out[10]); ты передаёшь в функцию не массив, а два инта... Ты определись что тебе нужно, у тебя в общем декларация и реализация функции разные
Hexter
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 5
19.11.2013, 23:12  [ТС]     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ #3
хм, я так пробовал делать, но тогда выдаёт 4 ошибки
2 таких[C++ Error] Unit1.cpp(25): E2034 Cannot convert 'int' to 'int *'
такая же и для B [C++ Error] Unit1.cpp(25): E2342 Type mismatch in parameter 'A' (wanted 'int *', got 'int')

оу, нужно передавать массив, но, тогда как?

Добавлено через 2 минуты
Всё, вопрос исчерпан, криво передавал...
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.11.2013, 23:13     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ #4
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
40
41
42
43
44
45
#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include <time.h>
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
void Sort(int[], int[]);
int main(int argc, char* argv[])
{
        int In[10], Out[10];
        randomize();
        for (int i = 0; i<10; i++)
        {
                In[i] = random(101)-25;
                printf("In[%d]=%d\t", i, In[i]);
        }
         
        Sort(In, Out);
         
        for(int i = 0; i<10; i++) printf("\nOut[%d] = %d", i, Out[i]);
 
         getch();
         return 0;
}
 
void Sort(int A[], int B[])
{
        int min = 100, min_i;
        for (int j = 0; j<10; j++)
        {
                min = 100;
                min_i=0;
                for (int i = 0; i < 10; i++)
                        if (min > A[i]){ min = A[i];min_i=i; }
                B[j] = min;
                A[min_i] = 100;
        }
}
//---------------------------------------------------------------------------
Hexter
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 5
19.11.2013, 23:13  [ТС]     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ #5
спасибо
Yandex
Объявления
19.11.2013, 23:13     [Linker Error] Unresolved external 'Sort(int, int)' referenced from H:\INFORMATIC\5\UNIT1.OBJ
Ответ Создать тему
Опции темы

Текущее время: 22:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru