IT

'분류 전체보기'에 해당되는 글 197건

  1. 2011.05.03 문자 입출력
  2. 2011.05.02 Linux 디버깅 방법
  3. 2011.05.02 Visual Studio 디버깅 방법
  4. 2011.04.29 변수와 메모리
  5. 2011.04.28 자료형-2
  • 한문자(ANSI 표준)-windows,linux 지원
    • putchar()->화면에 문자를 넣는다
    • getchar()->키보드로부터 문자를 가져온다.

 

  • 한문자(비표준)-windows 지원
    • getche()->키보드에서 키를 누르면 바로 입력값을 가져온다(버퍼를 사용하지 않는다.)
    • getch()->getche함수와 동작은 같지만 화면상에 입력값을 출력하지 않는다.(e = echo)
    • #include <conio.h> -> 콘솔 입출력 헤더 파일 사용

 

  • fflush()->쌓여있는 데이터를 지운다.
    • Windows 지원
    • linux에서는 fflush() 작동 안함
    • linux 에서는 getchar()로 처리(enter 키 값 처리)

 

  • stdin-> 표준입력(키보드)

 

  • 키보드 -> 버퍼 -> OS
    • 버퍼 송신(enter 키, \n)

'소프트웨어 > C언어' 카테고리의 다른 글

부동 소수점 - IEEE 754  (0) 2011.05.09
[난수 생성]  (0) 2011.05.09
변수와 메모리  (0) 2011.04.29
자료형-2  (0) 2011.04.28
자료형-1  (0) 2011.04.27
Posted by sinpk
  • gcc 디버깅 옵션 –g
    • gcc –o -g main main.c 
  •  
  • gdb 실행파일
    • gdb main

명령어

의  미

b (breakpoint)

실행 중 디버그를 위해 멈추는 위치 지정

b 함수명

함수명에서 멈춤

b 라인번호

라인번호에서 멈춤

r (run)

실행 시작

K(kill)

프로그램 실행 종료

n (next)

현재 라인 실행 (함수의 경우 실행하고 다음 라인으로 넘어 감)

s (step)

현재 라인 실행 (함수의 경우 호출된 함수 내로 들어가 실행 계속)

c (continue)

다음 breakpoint까지 실행

u(until)

현재루프 빠져나감

finish

현재 함수를 수행하고 빠져나감

return

현재 함수를 수행하지 않고 빠져나감

   

l (list)

현재 수행되고 있는 라인부터 10개 라인씩 연속적으로 소스 코드를 프린트

p (print) 변수명

지정된 변수를 출력한다.(포인터 변수도 가능하다)

p *p@4(배열크기)

배열 변수 p를 출력한다.

p $레지스터명

레지스터를 출력한다.

h (help)

도움말

q (quit)

gdb 종료

 

Set listsize

List 명령어 사용시 보여주는 라인수를 설정한다.

L 함수명, L 라인번호

특정 라인이나 함수로 이동한다.

L 파일명.c:함수명

특정 파일의 함수를 보여준다.

B 라인번호, B 함수명

특정 라인이나 함수에 브레이크 포인트를 설정한다.

B 파일명.c:라인번호

특정 파일의 라인에 브레이크 포인트를 설정한다.

B -2

현재 라인으로부터 2줄 이전에 브레이크 포인트를 설정한다.

B 10 if tmp ==0

10행에 브레이크 포인트를 설정하는데 tmp 변수가 0일 때 작동한다.

CL 라인번호

브레이크 포인트를 해제한다.

D

모든 브레이크 포인트를 해제한다.

Info breakpoints

설정되어 있는 브레이크 포인트를 출력한다.

Info locals

현재 상태에서의 지역 변수를 출력한다.

Info variables

현재 상태에서의 전역 변수를 출력한다.

Enable 브레이크 포인트 넘버

브레이크 포인트를 활성화 한다.

Disable 브레이크 포인트 넘버

브레이크 포인트를 비활성화 한다.

Watch 변수명

변수가 바뀔 때 마다 브레이크 포인트가 걸리면,

변수의 이전 값과 현재 값을 출력한다.

Display 변수명

한줄씩 실행하면서 매번 변수값이 어떻게 변경되었는지 출력해준다.

Undiplay 변수명

Display 를 해제한다.(활성화, 비활성화 가능하다)

'소프트웨어 > Linux' 카테고리의 다른 글

[MAC OSX] port 명령어  (0) 2011.05.21
USB util 컴파일하기  (0) 2011.05.21
makefile  (0) 2011.05.11
분할 컴파일  (0) 2011.05.11
Vi 편집기  (0) 2011.04.26
Posted by sinpk
  1. 브레이크 포인트 설정한다.

 

  1. F5 키를 누른다.

     

  2. F10키를 누르면 노란색 화살표가 가르키는 소스코드를 실행한다.

     

  3. 위 화면에서 오른쪽창은 자동 와치창이고, 왼쪽창은 수동 와치창이다
  4. 수동 와치창에 변수명을 입력하면 현재 변수안에 있는 값을 보여준다.
Posted by sinpk

8비트 computer

[심볼 테이블 : 예]

Type

Name

Address

Int

Num1

100

Int

Num2

200

 

동작순서

  1. Cpu->memory
  2. Memory->cpu(레지스터 저장)
  3. ALU+10->cpu(레지스터 저장)
  4. Cpu->memory

Printf ("%08X",a); -> 16진수 8자리, 빈자리는 0 채운다.

 

[실제 심볼 테이블]

Type

Name

Address-linux

Address-windows

int

Num1

BFFFF878

0012FF7C

int

Num2

BFFFF874

0012FF78

'소프트웨어 > C언어' 카테고리의 다른 글

[난수 생성]  (0) 2011.05.09
문자 입출력  (0) 2011.05.03
자료형-2  (0) 2011.04.28
자료형-1  (0) 2011.04.27
2011.04.27 피보나치 수열의 합 계산 프로그램  (0) 2011.04.27
Posted by sinpk

자료형-2

2011. 4. 28. 17:38 : 소프트웨어/C언어

Int

signed int

unsigned int

short int

unsigned short int

각 컴퓨터마다 int,short,long형에 할당된 바이트의 크기가 다르다.

Char short int long

 

Short 형은 int형의 절반만 이용

Unsigned 자료형이 속도가 제일 빠르다

32bit 컴퓨터 -> int형이 제일 빠르다

 

Sizeof() => 연산자이다. (함수가 아님)

 

43    67L    57u    67U    89u    89UL

Long형 상수의 경우 숫자 끝에 l이나L을 붙인다.

unsigned long int 형의 경우 ul 이나 UL을 붙인다.

실수형 상수의 경우는 숫자 끝에 F를 붙이면 float형, L을 붙이면 long double형으로 정해진다.

 

%d : 10진수(signed int 정수)

%x : 16진수

%o:8진수

%f : float

%lf: long double

%u: unsigned int (양수)

%c: 문자 출력

%s: 문자열 출력

 

문자 상수

Char ch = 'a'

아스키코드표의 a의 숫자값이 ch변수에 저장

 

문자열

Char ch[8]="This is";

T

h

i

s

 

i

s

\n

84

104

105

115

32

105

115

0

위와 같은 형태로 저장된다.

'소프트웨어 > C언어' 카테고리의 다른 글

문자 입출력  (0) 2011.05.03
변수와 메모리  (0) 2011.04.29
자료형-1  (0) 2011.04.27
2011.04.27 피보나치 수열의 합 계산 프로그램  (0) 2011.04.27
컴파일 과정  (0) 2011.04.25
Posted by sinpk