달력

52024  이전 다음

  • 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


cl /P main.c -> .i 파일 생성

cl /Fa main.c -> .asm 파일생성

cl main.c -> .exe 파일 및 .obj 파일생성


기계어는 2(bin)진수이나 화면표시의 편리상 16진수로 보여줌(hexa view)


작성->.c 전처리(에러)->.i  컴파일(에러)->.asm 어셈블러->.obj 링크(에러)->.exe 실행->런타임 에러

                  C           assembly       기계어  

리눅슨는..gcc () -o                      .s             .o


윈도우 실행기준 1. 현재위치 기준으로.. 1)이름만 2) 이름.exe

                2. path에 등록된 경로위치에서...

유닉스가 직접X.. gcc가 .c를 보고 실행파일인지 여부 결정. .c면 실행

                 경로는.. 윈도처럼 현재위치가 항상 기준은 아님. ./를 명시해야..다른폴더 파일을 지우거나 실행할 위험이 없음.


-r/rwx/---/---

/소유주/그룹/기타

업무일지 방식 : [smart]이름-날짜(-과제명)

도스창에서 notepad main.c


#include<stdio.h> //전처리 영역으로서 C가 아님. .c->.asm 이전에.. .c->.i 하는 부분. 이 한줄이 .i 오천줄 정도.

 //#은 다 전처리 영역. stdio.h 안에 또 다른게..include 됨...

                  //이렇게 다 include 하면...   .i 파일로 만들어 짐.

                  //헤더파일들은.. C:\Program Files\Microsoft Visual Studio 10.0\VC\include에 있음.


int main(void)    //C

{

printf("Hello world! \n");

return 0;

}

<> include 폴더 안에서 stdio.h 파일을 찾으라는 말임.

include 폴더 경로도 설정가능.

리눅스창에서.. 아디->usr->include->ls -al stdio.h


main 엔트리포인트 즉 진입점. (윈도우에서는 winmain)

return 함수실행전의 상태로 돌아오라 (즉, 함수 종료).

return 뒤에 뭐 적으면 그냥 종료 됌.

0은.. 일할 때 문제없으면 0을 넘기라.고 C표준에 정의 됌.

질> 엔트리포인트 두 개 이상 가능?



Posted by C언어 보이
|

cd -> 로그인시 폴더로 이동

ln -s  /mnt/hgfs/One/oyj cwork 바로가기 생성


종단 컴----종단 컴. terminal. zterm.

기계어->assembly->bctl/b->c->c++

컴파일러 : 윈도 : visual studio 유료 (집에서만 쓰지 않고 만든 걸 상용판매나 인터넷 공유면 전


화옴. 잡히면..원래 가격의 열배)

           리눅스 : gcc (gnu c compiler) 무료

작성->.c 전처리->.i  컴파일->.asm 어셈블러->.obj 링크->.exe

                  C           assembly       기계어  

시스템속성->고급->환경변수->admin 변수->path

mspdb100.dll

cl /? 컴파일 옵션 설명

윈도우 도스창에서 cl main.c가 컴파일 안 될 때..필요 라이브러리명이 없다는 메시지가 뜨는 데..

(그 라이브러리명 주소+;)를 환경변수의 lib 변수의 변수값에 넣으면..실행 됨.


cl main.c -> .exe 파일 및 .obj 파일생성

cl /Fa main.c -> 어셈블리 파일생성

Posted by C언어 보이
|

리눅스/vi
분리자
 - 한글계통 프로그램 \
 - 영문쪽 /
vi .vimrc (vimrc내용을 참조하라는 말)

set number : 숫자나옴
확장명령어 모드 : wq : write 후 quit

      1 기본적인 환경설정
      2 set nu
      3 set ts=4  들여쓰기
      4 set shiftwidth=4 
      5 set cindent
      6 set nowrap
      7 set ai
      8 set aw

리눅스 종료명령 ctrl+d (윈도 엑스버튼 사용은 나쁜 버릇)
gcc -o main main.c (출력할 이름을 main으로 해라는 뜻)
gcc : gnu c compiler
-o : output (출력)
main : 실행파일로 할 이름
main.c : 내가 작성한 파일 (따라서 내가 작성한 파일명은 외우고 있어야 함)
./main에서 ./은 현재위치

- 앞으로 아래내용 항상 띄워놓기
      1 \include <stdio.h>
      2
      3 int main()
      4 {
      5         printf("good 음냐\n");
      6
      7         return 0;
      8 }
      9
     10

비쥬얼 스튜디오 명령 프롬프트
실행창 우클릭메뉴 '표시'누르고 경로 드래그, 우클릭.
비쥬얼 스튜디오 명령 프롬프트에서.. cd 우클릭메뉴 붙혀넣기 클릭
main.exe exe는 execute 실행파일

HDD드라이브명이 C인 이유. 옛날 컴 a,b는 FDD..c가 HDD. 영문자 c와의 구별을 위해 c:
d드라이브는 ODD (optical disk drive)

도스창에서 chcp 437 -> 영문모드로. 현재모드를 437 모드로.
           chcp 949 -> 한글모드로.
           .은 현재위치를 말함.
    ..현재위치 기준으로 상위 디렉토리
           \ 뿌리 디렉토리

절대경로
상대경로

리눅스명령어 cp a.c d.c(a.c를 카피하여 d.c생성). 이 명령의 풀은.. cp ./a.c ./d.c
      cp a.c ./a.c == cp a.c a.c  == cp a.c . (셋 다 상대경로) 
             == /mnt/hgfs/One/oyj/a.c
 
상대경로를 이용한 복사 cp a.c ./test1/ : 현재위치의 하위 디렉토리 test1에 a.c를 복사
                       cp a.c ./../    :     "      상위  "      에 a.c를 복사

mv : move. 파일을 이동하거나 이름을 바꾸는데 사용
rmdir smart : remove smart directory
rm a.c : a.c를 삭제
rm -rf smart : smart라는 폴더 강제삭제. - (묻지말고). remove force (강제삭제)


 

'C언어 업무보고' 카테고리의 다른 글

0305 업무보고 리눅스 파일생성  (0) 2014.03.06
0304 업무일지 전처리,컴파일  (0) 2014.03.04
0228 리눅스,명령어,vi  (0) 2014.02.28
0227 리눅스 명령어  (0) 2014.02.27
0226  (0) 2014.02.26
Posted by C언어 보이
|