Это - мой код C:
#include <stdio.h>
void print_hello() {
printf("Hello n10321234, welcome to BSB211");
}
int main() {
print_hello();
return 0;
}
Однако я продолжаю получать следующие ошибки, когда я компилирую и выполняю исполняемый файл.
./print_hello: line 3: syntax error near unexpected token ('
./print_hello: line 3: `void print_hello(){'
Для компиляции я использую gcc print_hello.c -o print_hello
и работать я использую ./print_hello
.
Вы, вероятно, пытаетесь "выполнить" исходный код вместо двоичного файла, произведенного компилятором C и компоновщиком.
Пожалуйста:
Перейдите к каталогу, содержащему Вашу программу C.
Удалите файл print_hello использующий команду: rm -f print_hello
.
Исправьте полномочия print_hello.c команды использования файла: chmod 640 print_hello.c
Выполните команду: gcc print_hello.c -o print_hello
и удостоверьтесь, что это не производит сообщения об ошибке.
Удостоверьтесь, что новый исполняемый файл создается в текущем каталоге путем проверки вывода команды: file print_hello
.
Выполните новый исполняемый файл с помощью команды: ./print_hello
.
Примечание: После редактирования (изменяют) исходный код, просто повторно выполняют шаги 4 и 6.
По всей вероятности Ваш исходный код был записан или отредактирован в среде не-Unix, и Вы пытаетесь скомпилировать его в Ubuntu.
Синтаксическая ошибка сообщения об ошибке около неожиданного маркера' (‘ происходит в среде типа Unix, Cygwin, и в интерфейсе командной строки в Windows. Эта ошибка будет по всей вероятности инициирована, когда Вы попытаетесь выполнить сценарий оболочки, который был отредактирован или создан в более старых системах DOS/Windows или Mac.
В таком случае можно использовать dos2unix инструмент для преобразования его.
dos2unix yoursourcecode.c
Для большего количества информации: https://appuals.com/fix-syntax-error-near-unexpected-token/