| 2005-07-19, 02:24 PM | #1 |
|
Member
Registered: Jan 2005
My Mac: G5
Posts: 31
오프라인
|
xcode 질문입니다,,
제가 이제는 학교에서 C언어를 배워야 하는데.. 맥에서 xcode를 이용해서 C언어를 공부 할수 있겠죠? 음 제가 완전 초보라..
XCDE를 처음 실행 하고 파일 메뉴에서 new file을 선택하면 메뉴가 뜨는데 어떤 것을 실행 해야 하는건지도 몰라서 허접한 질문 올립니다^^ 그리고 new file하고 new progect하고 어떤 점이 다른 것이죠?.. new file로 하니까 컴파일이나 실행등의 메뉴도 없던데.. 답변이 있었으면 좋겠네여., 너무 질문을 주서없이 했지만,, 답변 부탁드립니다,, |
|
| 2005-07-19, 02:51 PM | #2 |
|
Senior Member
![]() ![]() Registered: Feb 2002
My Mac: 파워북
Posts: 214
오프라인
|
Xcode는 빌드툴입니다. 파일이 여러개가 서로 참조하는 복잡한 프로그램이 있을 때 빌드하는 걸 도와주는 것이죠. C언어를 처음 배우신다면 TextWrangler나 Emacs같은 에디터로 프로그램을 만드시고 터미널에서 gcc를 사용하시는 것이 교육상 좋을 것 같기도 하네요.
Xcode로 컴파일 하시길 원하시면 New Project에서 Command Line Tool에서 Standard Tool을 선택하시면 됩니다.
__________________
What doesn't kill you makes you stronger. |
|
| 2005-07-19, 04:17 PM | #3 |
|
Veteran Member
![]() ![]() ![]() Registered: May 2003
My Mac: PowerBook G4 15" 1.5GHz SD, iPod 15G , Airport Express, Mac Classic, Mac IIvx
Posts: 569
오프라인
|
대부분의 학교가 유닉스 시스템을 사용한다는 전제하에, 일단 에디터 쓰는 법을 익히시길 바랍니다. 사람 나름대로 손에 익는 에디터가 있지만 아직은 가장 인기있는 에디터는 vim인 것 같습니다. 처음에는 조금 어렵지만 익숙해지면 꽤 빠르게 코딩을 할 수 있게 됩니다. 사용법은 관련서적도 많고 웹 상에도 널려있으니 찾아보시기 바랍니다.
컴파일은 기본적으로 gcc -o [executable file] [source file]로 하면 됩니다. 둘 다 터미널에서 실행하면 됩니다. 저 역시 이렇게 배우는 것이 기본에 충실하다고 생각합니다. |
|
| 2005-07-19, 05:25 PM | #4 |
|
Member
Registered: Jan 2005
My Mac: G5
Posts: 31
오프라인
|
넵 답변 감사 합니다,. 그런데 제가 완전 초보라 한번더 질문 드립니다,,
vim을 이용해서 작업을 하는것까지는 이해가 갔는데.... gcc를 이용 해서 컴파일 하는법이 이해가 안 갑니다,, 음 님 설명은 "gcc -o 실행파일 소스 파일" 이라고 하셨는데.. 그럼 vim으로 만든것이 소스가 되고 실행 파일은 어떴게 되는 것인지... 조금만 자세히 말씀해주시면 안될까여^^ |
|
| 2005-07-19, 06:00 PM | #5 |
|
Veteran Member
![]() ![]() ![]() Registered: May 2003
My Mac: PowerBook G4 15" 1.5GHz SD, iPod 15G , Airport Express, Mac Classic, Mac IIvx
Posts: 569
오프라인
|
$ gcc -o hello hello.c 또는 $ gcc hello.c -o hello 라고 입력합니다. 그러면 hello라는 실행파일이 생깁니다. 엄격히 말하자면 소스파일을 컴파일(compile)하면 목적파일(objective file)이 형성되고, 이러한 목적파일들이 링크(Link)되어 비로서 실행파일이 형성됩니다. 위의 경우에도 사실은 이와 같은 과정을 모두 거친 것입니다. 자세한 것은 이곳을 참조하시기 바랍니다. 하지만 학교에서 하는 기초 C 한 학기 강좌라면 오브젝트 파일을 만들 일은 물론이거니와 make를 쓸 일도 없을 겁니다. |
|
| 2005-07-20, 02:48 AM | #6 |
|
Member
Registered: Jan 2005
My Mac: G5
Posts: 31
오프라인
|
네 이제 이해가 다 되었습니다.,,^^ 감사합니다,,
|
|
| 2005-07-20, 04:03 AM | #7 |
|
Elite Member
![]() ![]() ![]() ![]() Registered: Jun 2005
My Mac: 맥북+아이팟
Posts: 1,358
오프라인
|
저는 Xcode를 추천합니다. 더 재밌거든요. ^^
Xcode로도 원하시는 일을 할 수 있습니다:
한 번 시도해 보세요. 굳이 터미널을 쓰실 필요가 없습니다. ![]() |
|
| 2005-07-20, 05:15 AM | #8 |
|
Member
![]() Registered: Sep 2004
My Mac: MAC mini
Posts: 32
오프라인
|
유닉스 콘솔에서 프로그램을 짜보고 싶다면
한빛미디어 에서 나온 '유닉스 리눅스 프로그래밍 필수 유틸리티' 책을 추천합니다. 그리고 ^^:: vim의 세계로 어서 오시길 바랍니다.. |
|
| 2005-07-20, 05:58 AM | #9 |
|
New Member
Registered: Jun 2005
My Mac: PowerBook G4, MacBook C2D
Posts: 18
오프라인
|
프로그래밍 공부, 더군다나 유닉스 환경의 프로그래밍을 시작하신다면,
vi와 gcc에 한표 던집니다. 모쪼록 프로그래밍 '도구'를 공부하지 마시고, '프로그래밍'을 공부하시길 바랍니다. |
|
| 2005-07-21, 01:07 AM | #10 |
|
Senior Member
![]() ![]() Registered: Feb 2002
My Mac: 파워북
Posts: 214
오프라인
|
음... Vim말고 Emacs의 세계도 좀 구경하세요.
맥에서 돌아가는 걸로 Aquamacs Emacs나 Yaced를 추천합니다.http://versiontracker.com/php/search...g=1&perPage=20
__________________
What doesn't kill you makes you stronger. |
|
| 2006-06-02, 09:23 PM | #11 |
|
Member
![]() Registered: Jun 2005
My Mac: Ibook G4 12" 1.2GHZ with Bluetooth
Posts: 31
오프라인
|
저... 질문이 있습니다.
Xcode를 쓰시는 C언어 프로그래밍 고수님들께 질문 있습니다. (뭐.. 꼭 고수가 아니셔도 됩니
다.) 제가 최근에 C랑 C++을 배우고 있습니다. 학원에서는 Visual C++을 쓰는 바람에 집에서 맥을 쓰는 저는 Xcode를 이용해서 숙제를 하고 있는데요...어제 학원에서 fopen과 fprintf명 령문에 관한 숙제를 내 줬는데 학원에서 배우고 와서 xcode로 하려니 다른점이 한두가지가 아 니라서 어렵더라구요. empty file을 만들어서 데이타를 입력하고 .dat로도 해보고 .txt로 해보고 그랬는데도 fopen 을 써서 파일을 읽어들이려고 해도 절대 안읽더라구요. 인터넷을 약간 뒤져보니 fopen파일은 윈도우즈랑 다른점이 없다고 하는데 왜 데이타가 있는 파일을 못 읽어들이는지 모르겠습니다. 학원에서 작동하던 코드가 xcode에서 작동을 안 하는 걸로 보아 윈도우즈와 맥의 차이인것 같은데요...인터넷에서 아무리 찾아봐도 답변을 찾질 못했 습니다. 여기가 제 마지막 희망입니다. 도와주세요..ㅜ.ㅜ int main() { int a,b,sum; FILE* fin,*fout; fin= fopen ("0601.txt", "r"); //fout=fopen ("0602.txt", "w"); if (fin==NULL) { puts ("file open error"); return 0;//¥Á¿Â «ˆ «‘ºˆø°º≠ π˛æÓ≥™Ω√ø¿. } while (1) { fscanf (fin, "%d %d", &a,&b); if (feof(fin)) break; sum= a+b; printf ("%d+%d=%d\n",a,b,sum); fprintf(fout, "%d+%d=%d\n",a,b,sum); } fclose(fin); //fclose(fout); } |
|
| 2006-06-02, 10:35 PM | #12 |
|
Senior Member
![]() ![]() Registered: Mar 2006
My Mac: Intel iMac20', iMacG4 20', MacminiG4, iBook12', MacBook Black,XSERVE
Posts: 114
오프라인
|
안 읽힌다는 것이
0601.txt의 스트림 오픈시 fin에 NULL을 리턴한다는 뜻인지, 아니면 0601.txt 스캔시 지정해 주신 스캔포맷과 일치하지 않아 제대로 스캔을 못하고 있는 것인지 확인해 보세요. |
|
| 2006-06-03, 01:06 AM | #13 |
|
Senior Member
![]() ![]() Registered: Feb 2002
My Mac: 파워북
Posts: 214
오프라인
|
안 읽힌다는 것이 무슨 뜻인지 잘 모르겠네요. 터미널에서 해보니 잘 됩니다. 혹시 헤더의 문제인지? #include stdio.h를 앞에 넣어서 터미널에서 해 보세요.
__________________
What doesn't kill you makes you stronger. 세리자와 님께서 2006-06-03 01:12 AM 에 수정하셨습니다.. |
|
| 2006-06-03, 04:35 AM | #14 |
|
Veteran Member
![]() ![]() ![]() Registered: Feb 2003
My Mac: MacBook Black, iPhone 8GB
Posts: 546
오프라인
|
파일 이름을 줄 때 그냥 주지 말고 전체 경로를 다 주세요.
다른 방법은 build된 실행 파일 바로 옆에다 텍스트 파일을 놓으시던가요. (10 픽셀 이내...는 아니고, 같은 폴더 내에 넣으시면 될겁니다. ![]() 프로그램이 파일을 찾을 수 있어야 하는데, 아무데나 놓아서는 관심법이라도 쓰지 않는 이상 찾을 방법이 없습니다. |
|
| 2006-06-03, 09:36 AM | #15 |
|
Member
![]() Registered: Jun 2005
My Mac: Ibook G4 12" 1.2GHZ with Bluetooth
Posts: 31
오프라인
|
hama님 감사합니다~ 풀렸어요.
굉장히 빠른 답변 감사합니다. '아무도 답변 안해주면 어쩌나..'하고 혼자서 소심하게 걱정하
고 있었어요. 0601.txt라는 파일을 제대로 스캔을 하지 못해 그 파일 안에 있는 데이타를 못 읽어 들인다는 말을 그냥 "못 읽습니다" 라고 말한것 같네요. hama님께서 말씀하신대로 했더니 인식을 하고 제대로 출력이 되네요. /Users/cureheal/Documents/Computer 학원/0601/0601.txt이라는 전체경 로를 주니깐 되네요. 전체경로를 줘야하는건 맥만의 특징인걸까요? 윈도우즈에서 할때는 전체경로를 주지 않아도 되 었는데 말입니다. 왠지 긴~ 전체경로를 입력하지 않아도 될 방법이 있을것 같은데. 아시는분 있으신가요? |
|