Почему я получаю ошибку сегментации, собирая несколько файлов .cpp?C++

Программы на C++. Форум разработчиков
Anonymous
Почему я получаю ошибку сегментации, собирая несколько файлов .cpp?

Сообщение Anonymous »

Я изучаю C ++ в качестве своего первого языка, и я использую компилятор Clang 13.0.0 в iPad.
Я получаю ошибку сегментации, собирая два файла вместе main.cpp и func.cpp , используя команду Clang ++ -wall -Std = c ++ -г Main.cpp func.cpp . /> Это файлы.

Код: Выделить всё

int add_numbers(int num1, int num2) {
int sum{};
sum=num1+num2;
return sum;
}
< /code>
func.h file < /p>
#ifndef _func_H_
#define _func_H_

int add_numbers(int num1, int num2);

#endif
< /code>
main.cpp file < /p>
#include 
#include "func.h"

using namespace std;

int main () {
int num1{10}, num2{12};

int summation=add_numbers(num1,num2);
cout 
clang++ -Wall -std=c++14 -g main.cpp func.cpp
segmentation fault
segmentation fault
Но, когда я включаю func.cpp в основном с #include ”func.cpp» тогда все работает нормально. /> Изменить: < /p>
Когда я использую эту команду, она работала < /p>

Код: Выделить всё

clang++ main.cpp -c
clang++ func.cpp -c
clang++ main.o func.o
a.out
Пожалуйста, объясните Почему это сработало, а также как избавиться от предупреждения - [ввод линкера неиспользуется], который генерирует?

Подробнее здесь: https://stackoverflow.com/questions/744 ... -cpp-files

Вернуться в «C++»