Jak uruchomić program C na Mac OS X za pomocą terminala?

Jestem nowy w C. oto mój "Hello, world!"program.

#include <stdio.h>

int main(void)    
{
  printf("Hello, world!\n");
  return 0;
}

Po próbie uruchomienia go za pomocą terminala pisze:

MacBook-Pro-MacBook:~ macbook$ /Users/macbook/Desktop/peng/Untitled1
-bash: /Users/macbook/Desktop/peng/Untitled1: Permission denied
MacBook-Pro-MacBook:~ macbook$ 
Dlaczego?
 83
Author: jww, 2015-09-01

9 answers

Najpierw zapisz swój program jako program.c.

Teraz potrzebujesz kompilatora, więc musisz przejść do App Store i zainstalować Xcode, który jest kompilatorem i narzędziami programistycznymi Apple. Jak znaleźć App Store? Wykonaj "Wyszukiwanie Spotlight" wpisując Spacja i zacznij wpisywać App Store i naciśnij wprowadź , gdy odgadnie poprawnie.

App Store wygląda jak to:

Tutaj wpisz opis obrazka

Xcode wygląda tak w App Store :

Tutaj wpisz opis obrazka

Następnie należy zainstalować narzędzia wiersza poleceń w Terminal. Jak uruchomić Terminal? Musisz wykonać inne "Spotlight Search" , co oznacza, że wpisujesz Spacja i zacznij wpisywać Terminal i naciśnij wprowadź , gdy zgadnie Terminal.

Teraz zainstaluj narzędzia wiersza poleceń, takie jak to:

xcode-select --install

Następnie możesz skompilować swój kod po prostu uruchamiając gcc jak w następnej linii bez konieczności odpalania dużego, brzydkiego interfejsu graficznego o nazwie Xcode:

gcc -Wall -o program program.c

Uwaga: w nowszych wersjach OS X zamiast gcc używasz clang, Jak to:

clang program.c -o program

Następnie możesz uruchomić go za pomocą:

./program
Hello, world!

Jeśli twoim programem jest C++, prawdopodobnie będziesz chciał użyć jednego z tych poleceń:

clang++ -o program program.cpp
g++ -std=c++11 -o program program.cpp
g++-7 -std=c++11 -o program program.cpp
 168
Author: Mark Setchell,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-22 08:09:07

Najpierw upewnij się, że poprawiłeś swój program:

#include <stdio.h>

int main(void) {
   printf("Hello, world!\n"); //printf instead of pintf
   return 0;
}

Zapisz plik jako HelloWorld.c i wpisz w terminalu:

gcc -o HelloWorld HelloWorld.c

Następnie uruchom plik wykonywalny w następujący sposób:

./HelloWorld

Powinieneś widzieć Hello World!

 51
Author: Eduard Grigorescu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-03 05:30:43

Praca w 2019 Domyślnie możesz skompilować swoją nazwę.c korzystanie z terminala

 cc name.c

A jeśli chcesz uruchomić po prostu napisz

 ./name.out
 12
Author: Antonio Cachuan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-18 03:08:21

"C-program" nie powinien być uruchamiany. Jest on przeznaczony do skompilowania w" wykonywalny " program, który następnie może być uruchomiony z terminala. Do tego potrzebujesz kompilatora.

Och, i odpowiedź na twoje ostatnie pytanie ("dlaczego?") jest to, że plik, który próbujesz wykonać, nie ma ustawionych praw wykonywalnych (co kompilator zwykle robi automatycznie z binarnym, co wywnioskujmy, że próbowałeś uruchomić kod źródłowy jako skrypt, stąd podpowiedź na kompilacji.)

 9
Author: Pieter Bruegel the Elder,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-01 17:58:14

Aby to zrobić:

  1. Otwórz terminal

  2. Wpisz terminal: nano; który jest edytorem tekstu dostępnym dla terminala. kiedy to zrobisz. coś takiego się pojawi.

  3. Tutaj możesz wpisać swój C program

  4. Wpisz control(^) + x - > co oznacza wyjście.

  5. Zapisz plik, wpisując y, aby zapisać plik

  6. Zapisz nazwę pliku; np. helloStack.c (nie zapomnij dodać .c)

  7. Gdy to się pojawi, wpisz gcc helloStack.c

  8. następnie ./a.out: to powinno dać ci wynik!!
 4
Author: Simileoluwa Aluko,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-13 10:44:36

Aby skompilować c-program w macos, wykonaj poniższe kroki

Użycie polecenia cd w terminalu przejdź do lokalizacji programu c
wtedy wpisz poniższą komendę
make filename
następnie wpisz
./ filename

 3
Author: Ambati_prasanna_akhil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-30 05:59:20

Aby skompilować program w języku c na najnowszym macOS, po zapisaniu pliku wpisz w terminalu następujące polecenie:rozszerzenie c i dotarcie do ścieżki, do której zapisany jest plik:

Cc yourfilename.c

Po sprawdzeniu wszystkich błędów po kompilacji (jeśli występują), wpisz następujący kod:

./ a. out

Te polecenia są testowane na macOS Mojave i działają idealnie, zdrówko!

 3
Author: user11952272,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-11-17 14:02:57

Odpowiedź to chmod 755 hello-sprawia, że plik jest wykonywalny... To zabawne, więc nikt nie odpowiedział. Miałem ten sam problem na MacOS, który jest teraz rozwiązany.

Nano Witaj.c make hello chmod 755 Witam Potem ty to sprawdź ./ hello

Clang --version Apple LLVM w wersji 8.0.0 (clang-800.0.42.1) Target: x86_64-apple-darwin15.6.0

Nic nie zostało zainstalowane, Nano make (clang) chmod-wszystko już w MacOS

 0
Author: budwazzer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-10-30 23:20:53

1) Najpierw musisz zainstalować kompilator GCC dla mac (Google go i zainstalować go z sieci)

2) Zapamiętaj ścieżkę, na której przechowujesz plik C

3) Przejdź do terminala i ustaw ścieżkę

Np - jeśli zapisałeś w nowym folderze ProgramC w folderze dokumentu

   then type this in Terminal
    cd Document
    cd ProgramC

4) Teraz możesz zobaczyć, że jesteś w folderze, w którym zapisałeś swój program C (pozwól zapisać swój program jako Hello.c)

5) Teraz Skompiluj swój program

   make Hello
   ./hello
 -1
Author: ashish8882829,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-05 10:06:41