달력

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

0314 반복문,초기식,조건식,반복식,조건문,for,if else
삼항연산자 : 잘 안쓰며, 쓰라는 권유도 안 함. 다만 해석정도만 할 줄 알면 됌.
반드시 쓸 필요는 없으나..그게 코드상 짧을 때는 써도 뭐.

 

초기식
for (초기식,초기식,, ; 조건(하나만 쓸 수 있음!) ; 반복식,,,)
{
반복식
}

아래 반복문은 결과가 전부 같게 됌

무한루프 탈출방법
ctrl+c,ctrl+brk

조건문 최적화 : 걸릴 확률 높은 걸 첫순위 if 로.

 

#include<stdio.h>

int main()

 /*
 int inum1,inum2;
 inum2=0;
 for (inum1=0;inum1<5;inum1=inum1+1)
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
 inum2=inum2+2;
 printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
 */

 /*
 for (inum1=0,inum2=0;inum1<5;inum1=inum1+1,inum2=inum2+2)
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
  */

 /*
 inum1=0;
 inum2=0;
 while (inum1<5)
 {
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
  inum2=inum2+2;
  inum1=inum1+1;
 }
 */

 /*
 inum1=0;
 inum2=0;
 for (;inum1<5;)
 {
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
  inum2=inum2+2;
  inum1=inum1+1;
 }
 */


 /*
 inum2=0;
 for (inum1=0;inum1<5;inum1=inum1+1)
 {
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
  inum2=inum2+2;
 }
 */

 /*
  for (inum1=0,inum2=0;inum1<5;inum1=inum1+1,inum2=inum2+2)
 {
  printf("inum1 : %d, inum2 : %d \n",inum1,inum2);
 }
 */

 return 0;
}

Posted by C언어 보이
|


0312 폰트, 화면주사방식, 아스키코드, 형변환


나의 출석번호 18

윈도우용 출석번호 +10

리눅스용 출석번호 +40

cmd ftp 접근하는 방법 : ftp 192.168.10.100

user 

password 

1.bin

2.mget *.hwp

3.get main.c

인제부터 보이는 건 전부 리눅스명령어

도스에서 연 ftp끊을 땐 quit


lf : long float 즉 double


폰트. 문자란 존재하지 않는다. 다만 문자처럼 출력하는 픽셀점멸정보에 관한 이진수가 있을 뿐.

alt+숫자 -> 숫자에 해당되는 아스키코드 문자 출력

화면출력방식 픽셀들의 점멸을 이진수로. 따라서..아스키코드에서는 A에 해당하는 2진수에 대하여 


순서버호 65가 부여되어 있음.

화면주사방식 ntsc

             pal

영문푼트(문자출력 이진수?)가 들어있는 곳이 BIOS. basic input output system.  

따라서..우리가 키보드에 a를 치면 컴터안에 a에 해당하는 폰트수?가 입력됌.

'a' : ' '안의 문자에 해당되는 아스키코드 숫자

ascii : america standard code information interchange 미국 표준 코드 정보 교환


아스키코드는..초기에 0~127. 즉 128가지인 7비트만 필요.

하지만..어차피 8비트 단위로 쓰므로..확장 아스키코드가 나옴 (다른 나라 언어 포함하는).

한글폰트들의 분류. 조합형과 완성형


도스영문형 : chcp 437

도스한글형 : chcp 949


아스키코드(8비트)를 저장하기 위해 제일 접합한 자료형은 char (1바이트). char은 정수형 자료형.

참고로..처리속도는 32비트 컴터에서는 32비트(4바이트) 크기인 int가 좋음. 이유는, 안 쓰는 버스


들은 죽이는 신호를 보내야 함으로.

        용량최적화에서는 char임.


/t : 가로(오리엔탈) 텝


int형 변수 값을 char형 변수에 넣을 때 : 하향식 형변환. down casting

부호단위로 넣으며..끝에서 부터 넣는다. 따라서..크기가 다르면 상위바이트의 손실 발생.


반면..int형 변수 값을 float형 변수에 넣을 때. 혹은 소+대 : 상향식 형변환. up casting

정수.0 으로 그대로 들어감. 형동등의 원칙 (자료형이 큰 쪽으로. 상향식 형변환) 

              : 정수형<실수형. 1+1.4=2.4실수형으로.

      1바이트형(->4바이트형으로)+4바이트형


() 형변환 연산자 = (double)num1/num2; ()부터 먼저 처리.

printf(":%3.2f:",11.56789); 3필드폭 지정, 소수점.이후부터는 2자리까지 반올림 표현.

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언어 보이
|

- 리눅스는 문제없으면 메시지 없음. 문제있어야 메시지.
- pwd : 경로
- 리눅스, 도스 명령어 path, tree : 트리구조로 폴더구조 보여줌
- 윈도우 창에서 우클릭, 명령창열기 : 도스창으로 열림
- 윈도우 우클릭으로 새폴더 만들 때..mkdir 명령어가 자동 입력. 즉 mkdir 명령어가 없으면 새폴더 - 안 만들어짐. 즉..그래픽 유아

이 클릭시 명령어가 자동 입력 됨.
- 드래그 (ctrl c). 우클릭 : ctrl v. 즉, 드래그 상태에서 우클릭 : ctrl c, v.
- 리눅스 암호안보이게 하는 이유 : 암호글자뿐만 아니라 암호길이도 유출안되게 (유닉스도 마찬가지)
- 리눅스식 메모장(visual) 호출 : vi main.c (main.c라는 이름의 visual 생성)
- 쉬프트키, set number
- esc 눌러도 반응없는 상태 : 명령상태 : 키보드를 눌르면..키보드 글자입력(에디트 상태)이 아니라..키보드에 할당된 명령이 수행

됨 (조심해야 함).
-ll (ls-l의 약자)
- rm.파일명.확장자명 : 파일 지움

 

- visual (vi) 명령어
 - 콜론 -> 확장명령 상태 (제일 밑으로 뭐가 생김)
 - 세미콜론 ->
 - i : insert 글자삽입 상태로 됌 : 에디트 상태.
 - esc : 에디트 나 확장명령 상태에서 -> 명령상태로

- 명령상태에서 j, k, h, l : 아래, 위, 좌, 우. 에디트상태에선 j k h l
- 명령상태에서 w (word 칸 이동),dd(잘라내기),dw(한 단어 삭제), d2+윗키+엔터(현재 줄 포함 윗 쪽 2줄 삭제). d+u (언두). 백스페

이스(방향이동), 딜리트키나 x키(한 글자씩 삭제), 대문자 d(현재위치부터 라인끝까지 다 지움),
y(카피), p (위로 붙혀넣기), 대문자p(아래로 붙혀넣기), 대문자 j (밑에 줄을 현재줄과 붙임), r+문자(커서가 있는 한 글자를 입력문

자로 고침)

- 확장 명령상태에서 숫자 엔터 : 원하는 숫자의 행으로 이동
- 확장 명령상태에서 w (write저장), q엔터(도스창으로 나옴), q!엔터(저장않고 강제로 도스로 탈출)

- 해커스접속법 윈도우 실행창에서 : telnet ftz.hackerschool.org
- 해커스쿨 트레이닝2 아디/비번 : trainer2/linuxer
- 해커스쿨 트레이닝3 아디/비번 : trainer3/computer
- 리눅스 ls 에서 보여지는 항목리스트에서.. -rw-rw-r-- 처럼 앞부분에 -가 붙으면 파일, drwxr-xr-x 처럼 d가 붙으면 디렉토리

vi 정상종료 하면.. main.c.swp 스와핑 파일 (vi에서 커서감시) 사라짐.

 

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

0304 업무일지 전처리,컴파일  (0) 2014.03.04
0303 리눅스,명령어,절대경로,상대경로  (0) 2014.03.03
0227 리눅스 명령어  (0) 2014.02.27
0226  (0) 2014.02.26
0225 업무보고 보수법  (0) 2014.02.25
Posted by C언어 보이
|

자동차 트랙도는 시간 : 20초


리눅스 명령어 :
- ls -all : 모든 항목 표시
- clear : 화면 클리어
- mnt/hfgs/One : One 이라는 폴더로 위치이동
- mkdir name : name이라는 이름의 폴더 생성

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

0304 업무일지 전처리,컴파일  (0) 2014.03.04
0303 리눅스,명령어,절대경로,상대경로  (0) 2014.03.03
0228 리눅스,명령어,vi  (0) 2014.02.28
0226  (0) 2014.02.26
0225 업무보고 보수법  (0) 2014.02.25
Posted by C언어 보이
|

윈도우키+브레이크키 ->시스템 등록정보 단축키

  "     +e-> 폴더열림

  "     +r-> 실행 (커멘드창 열 때 등)


이진숫자의 표시공간 bit에 대한 설명 + 부호방식


컴퓨터는 기본구조상 뺄셈은 없고 덧셈으로 모두 처리. 대신..

덧셈회로에 2의 보수 회로가 들어있음. 즉, 2의 보수를 취하여 덧셈기에 입력.

수의 범위 (표현하는 대상에 따라 바이트를 잘 선택하기).


1. Magnitude 방식

단점1)

1000 0000 -0

0000 0000  +0


1000 0001 -1

0000 0001 +1

1000 0010 -2


1000 0001 -1

0000 0010 +2

1000 0011 -3


단점2)

1000 0001  +1

0000 0000  -1

덧셈에 대한 문제 : 10000 0010


2. 2의 보수법 (2's complete) : 컴퓨터가 채택한 방식

128 -128로 취급

255는 -1로 취급

(255를 -1로 바꿔주는 회로가 내부에 있음)


단점보완1)

0을 표현하는 비트구성이 하나만 있으면 됌.


단점보완2)

1111 1000 - 

0000 01111 +1

1 0000 0000 0

(넘쳐나온 맨 처음 1은 무시)


1111 1110 -2

0000 0010 +2

1 0000 0000 0


1111 1011 -3

0000 0010 +2

1111 1111 -1



보수(complete)/보수법

192에 대한 9의 보수 807 -> 999

671..328 -> 999


192 10의 보수 918 ->1000 (0으로 만드는 게 10의 보수)

671...439->1000


0   0000 0000 0 

127 0111 1111 127

128 1000 0000 -128

255 1111 1111 -1 


-128~127 : 256



궁금증)

- 컴퓨터(버스)에서 '값'의 전달 및 입력방식 (전기신호적으로)

- 1 음, 0 양으로 한 이유 : 전기절약?

- 덧셈만 있는 이유? 

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

0304 업무일지 전처리,컴파일  (0) 2014.03.04
0303 리눅스,명령어,절대경로,상대경로  (0) 2014.03.03
0228 리눅스,명령어,vi  (0) 2014.02.28
0227 리눅스 명령어  (0) 2014.02.27
0226  (0) 2014.02.26
Posted by C언어 보이
|