Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
#1

Fatal error LNK1169: one or more multiply defined symbols found - C++

27.03.2014, 20:09. Просмотров 1052. Ответов 10
Метки нет (Все метки)

вроде прога работала, но сейчас выдает ошибку и все тут
D:\VS 10\kurs\Debug\kurs.exe : fatal error LNK1169: one or more multiply defined symbols found
d:\vs 10\kurs\kurs\k1.cpp(20): warning C4244: '=' : conversion from 'int' to 'float', possible loss of data

подскажите пожалуйста, в чем ошибка?

до этого было вместо:
cout << "kolichestvo strok";
cin >> d ;
cout << "kolichestvo stolbcov";
cin >> e ;

написано через "printf" и "scanf" (Си)


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
#include <iostream> 
 
using namespace std; 
int main() 
{ 
//объявление массива
 
int d,e;
float b[100][100];
cout << "kolichestvo strok";
cin >> d ; 
cout << "kolichestvo stolbcov";
cin >> e ; 
for (int n = 0; n < d; n++, cout << endl) 
    { 
        for (int m = 0; m < e; m++) 
            { 
                 b[n][m] = rand() % 10;
                cout << ' ' << b[n][m]; 
            } 
    } 
    int count = 0; 
    for (int n = 0; n < d; n++) 
    { 
        for (int m = 0; m < e; m++) 
        { 
        if (b[n][m] == 0) 
        { 
            count++; 
            break; 
        } 
    } 
} 
cout << endl << " Rezylt = " << cout << endl; 
return(0); 
}
0
Миниатюры
Fatal error LNK1169: one or more multiply defined symbols found  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2014, 20:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Fatal error LNK1169: one or more multiply defined symbols found (C++):

fatal error LNK1169: one or more multiply defined symbols found - C++
Доброго всем времени суток! Никак не могу разобраться в чём дело... Помогите пожалуйста! stdafx.h #pragma once #include...

LNK1169: one or more multiply defined symbols found - C++
Не могу понять, в чём тут ошибка?? Помогите пожалуйста)) #include &lt;iostream.h&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; void...

Ошибка: one or more multiply defined symbols found - C++
Пишу программу на C++, все нормально работала, компилировалась, потом добавил строчку коментариев, (не стояло...), перекомпилировал и...

Fatal error LNK1169: обнаружен многократно определенный символ - один или более - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;climits&gt; using std::cout; using std::cin; using std::endl; int main()...

fatal error LNK1169: обнаружен многократно определенный символ - один или более - C++
код который показан снизу я компилировал в двух программах на visual c++ и dev c++ в dev c++ всё прошло успешно но в visual c++ выдаёт...

fatal error LNK1169: обнаружен многократно определенный символ - один или более - C++
Искала в интернете решение этой проблемы, находила похожие, но не помогло своей... В общем. Проект windows form. Есть два заголовочных...

10
_include
Студент
52 / 52 / 12
Регистрация: 17.09.2012
Сообщений: 291
Записей в блоге: 2
Завершенные тесты: 1
27.03.2014, 20:27 #2
Вообще, если это матрица, и вы вводите число строк и столбцов, то для создания и инициализации такой матрицы необходимо использовать динамический массив. А ошибка в прикрепленном изображении - не может найти файл..
0
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
27.03.2014, 20:36  [ТС] #3
эмм... в чем разница? я хотел бы попробовать так, узнать где я допустил ошибку

если я не ошибаюсь дин. массив так же пишется ?
C++
1
2
3
4
int *е = new int[num]; 
    for (int i = 0; i < num; i++) {
                p_darr[i] = i;
        cout << "Value of " << i << " element is " << е[i] << endl;
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
27.03.2014, 20:44 #4
Цитата Сообщение от Myda4ek Посмотреть сообщение
d:\vs 10\kurs\kurs\k1.cpp(20): warning C4244: '=' : conversion from 'int' to 'float', possible loss of data
Здесь понятно: предупреждение о не явном преобразовании:
C++
1
 b[n][m] =(float) (rand() % 10);
Либо заменить (что судя по коду логичнее) тип массива b на:
C++
1
int b[100][100];
А остальное у меня собирается, попробуйте в новом проекте....

Добавлено через 4 минуты
Цитата Сообщение от Myda4ek Посмотреть сообщение
если я не ошибаюсь дин. массив так же пишется
Одномерный да (один из вариантов), двухмерный:
C++
1
2
3
int **е = new int*[num1]; 
    for (int i = 0; i < num1; i++) 
                e[i] =new int[num2];
только и чиститься так же:
C++
1
2
3
for (int i = 0; i < num1; i++)
           delete [] e[i];
delete []e;
0
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
27.03.2014, 20:48  [ТС] #5
спасибо, работает, но сейчас эта часть кода считает не правильно
C++
1
2
3
4
5
6
7
8
9
10
11
int count = 0; 
    for (int n = 0; n < d; n++) 
    { 
        for (int m = 0; m < e; m++) 
        { 
        if (b[n][m] == 0) 
        { 
            count++; 
            break; 
        } 
    }
числа получаются в 16-ой и очень большие...
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
27.03.2014, 21:04 #6
Myda4ek, Ай и Вы написали и я не посмотрел....
C++
1
cout << endl << " Rezylt = " << cout << endl;
исправьте:
C++
1
cout << endl << " Rezylt = " << count << endl;
0
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
27.03.2014, 21:05  [ТС] #7
это я исправил сразу
0
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
31.03.2014, 21:10  [ТС] #8
Дана целочисленная прямоугольная матрица A, размером nxm. Определить количество отрицательных элементов в тех строках, которые содержат хотя бы один нулевой элемент.
первоначальное задание.

Добавлено через 6 минут
вот первоначальный код программы
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
#include <iostream> 
//#include <ctime> 
using namespace std; 
int main() 
{ 
 
int d,e;
float min, max;
float b[100][100];
printf("rows and calls");
scanf("%d\n %d\n" ,&d,&e); 
for (int n = 0; n < d; n++, cout << endl) 
{ 
for (int m = 0; m < e; m++) 
{ 
b[n][m] = rand() % 10; 
cout << ' ' << b[n][m]; 
} 
} 
int count = 0; 
for (int n = 0; n < d; n++) 
{ 
for (int m = 0; m < e; m++) 
{ 
if (b[n][m] == 0) 
{ 
count++; 
break; 
} 
} 
}
 
cout << endl << " Rezylt = " << count << endl; 
return(0); 
}
после замены на
C++
1
2
3
4
cout << "kolichestvo strok";
cin >> d ; 
cout << "kolichestvo stolbcov";
cin >> e ;
показывает ошибку
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
31.03.2014, 21:21 #9
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
46
#include <iostream> 
 #include <time.h>
 
 
int main() 
{ 
    //объявление массива
 
int d,e,k=-1;
float b[100][100];
srand( (unsigned)time( NULL ) );
std::cout << "kolichestvo strok";
std::cin >> d ; 
std::cout << "kolichestvo stolbcov";
std::cin >> e ; 
 
for (int m = 0; m < e; m++)
    { 
        std::cout << std::endl;
         for (int n = 0; n < d; n++) 
            { 
                 b[n][m] = (float) (rand() % 20-10);
                std::cout << ' ' << b[n][m]; 
            } 
    } 
    int count = 0, count1 = 0; 
  for (int m = 0; m < e; m++) 
    { 
         for (int n = 0; n < d; n++)  
        { 
        if (b[n][m] == 0 && k!=m) 
        { 
            k=m;
            for (int n1 = 0; n1 < d;n1++) 
                if (b[n1][m]<0) count++; 
            std::cout << std::endl << " V stroke "<< m+1<< "  "<<count;
            count1+=count;
            count=0;
           } 
 
    } 
} 
std::cout << std::endl << " Vsego = " << count1 << std::endl; 
system("pause"); 
return 0; 
}
Добавлено через 4 минуты
Вот тот что вы показали считать тоже не правильно будет
1
вредина
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 137
01.04.2014, 12:39  [ТС] #10
спасибо Вам огромное, посидел разобрался теперь понял, что к чему.
p.s.только мне проще написать вначале проги
C++
1
using namespace std;
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
01.04.2014, 14:10 #11
Myda4ek, Аккуратней может быть конфликт имен (count есть в пространстве имен std если подключить #include <algorithm>) поэтому я удалил эту строчку и поэтому так не делают в больших проектах
1
01.04.2014, 14:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2014, 14:10
Привет! Вот еще темы с ответами:

Fatal error LNK1169: обнаружен многократно определенный символ - один или более - C++
При компиляции возникает ошибка: 1&gt;Исходный код.obj : error LNK2005: &quot;public: __thiscall Dates::~Dates(void)&quot; (??1Dates@@QAE@XZ) уже...

LINK : fatal error LNK1561: entry point must be defined - C++
Создан как Empty project Код программы: namespace program { void main() { } }

error C2601: 'main' : local function definitions are illegal fatal error C1004: unexpected end of file found - C++
День добрый люди написал програму выдает 2 ошибки че не так подскажите error C2601: 'main' : local function definitions are illegal ...

Ошибка линковки файлов при компиляции: "fatal error LNK1169: обнаружен многократно определенный символ" - C++
Visual C++ 2008 Express Edition ошибка Компиляция... 1.cpp Компоновка... 2.obj : error LNK2005: &quot;int __cdecl GetByte(int)&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru