출처 - http://mintnlatte.tistory.com/444

 

(1) Declation
: atoi() : 문자열을 정수로 변환한다.


 int atoi(const char *str)
 
- str : 변환하기 위한 정수 문자열


(2) Return Value

- Succ = 변환에 성공한 정수 값 반환
- Fail = 0 반환


(3) Descriptions
: atoi() 함수는 문자열을 정수로 변환하는 함수이다.

- 정수로 된 문자열을 전달하여 int 형 정수로 변환한다.
- 전달된 문자열에 정수가 아닌 문자가 포함될 경우 문자 이전까지만 변환하고 값을 반환한다.
- 정수가 존재하지 않는 문자열을 전달할 경우 실패하여 0을 반환한다.
- 음수의 경우 '-'를 음수 부호로 해석해서 정상적인 반환처리가 이루어 진다.
- 문자열의 앞에 나오는 공백은 탭이나 개행 문자까지 포함해서 모두 무시된다.
- 부호는 '+'나 '-' 기호 중에서 한 번만 나올 수 있고, 중복되어 나오면 두 번째 기호에서 변환에 실패한다.
- 공백이나 부호가 "숫자" 중간에 올 경우 공백이나 부호 이전까지만 변환하고 값을 반환한다.
- int 자료형을 사용하기 때문에, 오버플로우가 발생할 수 있다는 사실을 염두해야한다.
 

(4) Example

 

- Source

 

 

 

- result

 

출처 - http://forum.falinux.com/zbxe/index.php?document_srl=408173&mid=C_LIB

 

 

설명

2개의 메모리 변수에 대해 내용을 비교하여 첫 번째 인수보다 두 번째 인수가 같은지, 큰지, 작은지를 구합니다.

헤더 string.h
형태 int memcmp(const void *s1, const void *s2, size_t n);
인수 void *s1 비교 대상 메모리 포인터
void *s2 비교할 메모리 포인터
size_t n 비교할 바이트 크기
반환 int
  • 양의 정수 : s1 이 s2보다 크다.
  • 0 : s1과 s2가 같다.
  • 음의 정수 : s1보다 s2가 크다.
예제
#include <stdio.h>
#include <string.h>

int main( void)
{
   char   *ptr1 = "forum";
   char   *ptr2 = "forum";
   char   *ptr3 = "forum.falinux";
   char   *ptr4 = "falinux";
   char   *ptr5 = "com";


   printf( "%s with %s = %dn", ptr1, ptr2, memcmp( ptr1, ptr2, strlen(ptr1)));
   printf( "%s with %s (ptr1 size)= %dn", ptr1, ptr3, memcmp( ptr1, ptr3, strlen(ptr1)));
   printf( "%s with %s (ptr3 size)= %dn", ptr1, ptr3, memcmp( ptr1, ptr3, strlen(ptr3)));
   printf( "%s with %s = %dn", ptr1, ptr4, memcmp( ptr1, ptr4, strlen(ptr1)));
   printf( "%s with %s (ptr1 size)= %dn", ptr1, ptr5, memcmp( ptr1, ptr5, strlen(ptr1)));
   printf( "%s with %s (ptr5 size)= %dn", ptr1, ptr5, memcmp( ptr1, ptr5, strlen(ptr5)));

   return 0;
}

출처 - http://blog.naver.com/thorong/70147333054

 

1. 개요

X.25 는 패킷 교환망에 광범위하게 사용되는 네트워크 프로토콜로서 1976년 ITU-T에 의해 표준으로 채택.

서로 다른 네트워크에 있는 컴퓨터간 데이터 통신을 가능하게 하는 프로토콜.

- WAN 프로토콜 : X.25, Frame Relay

- LAN 프로토콜 : TCP/IP, IPX, Apple Talk


2. X.25 프로토콜

- 패킷 교환망을 통해 DTE 와 다른 DTE 간 접속, 이를 위해 DCE에 접속

- X.25 는 DCE 와 DTE 간 상호접속 및 통신절차를 규정하는 계층화된 프로토콜


3. 계층별 기능

1) 물리계층

- 이용자와 패킷 교환망간 물리적인 접속의 설정, 해제, 보정에 대한 역할 담당.

- 모뎀 (Analog) 또는 DSU (Data Service Unit for digital) : 전송로

- 물리계층 프로토콜 종류

ㄱ) 논리적 조건 : 상호접속 회로 명칭, 기능, 타이밍 조건, 동작절차

ㄴ) 전기적 조건 : 신호선, 부하 임피던스 출력, 입력 전압

ㄷ) 기계적 조건 : 커넥터 형상, 치수, 핀배열, 케이블 규격

ㄹ) 전송 속도 : ITU-T, ISO, ETA 규격이 있음.


2) 프레임 계층

- 연속된 비트열을 전송단위로 분할, 순서제어, 에러검출 및 회복, 흐름제어 기능

- ex) HDLC (from ISO), LAPR (from ITU-T : HDLC와 유사, HDLC의 부분조합)


3) 패킷 계층

- 상호 통신이 가능하도록 호출설정 및 해제, 에러제어, 순서제어 및 흐름제어, 데이터 전송제어의 기능을 수행.

- 호출 성립 이후, 논리적인 통신경로를 호출 해제까지 유지하는데 이를 가상회선이라 함.


4. X.25 용도 및 향후 전망

1) 기존 저속의 전화 네트워크를 이용한 데이터 통신방식에서 상대적으로 안정적인 데이터 전용 네트워크로 X.25 가 등장함.

2) 최대 56kbps 전송속도 밖에 제공 못하나 아직도 금융권에서 지점간 연결용으로 사용됨.

3) 데이터 전송기술의 발전으로 보다 신뢰성 있고 저렴하게 고속 서비스가 가능한 방식으로 전환될 것으로 전망됨.


5. X.25 vs ATM

 X.25

ATM 

 가변 프레임 크기

고정셀 크기 

 Link by Link 에러검출 및 복구

에러복구 X 

 S/W 적인 라우팅

H/W 적인 라우팅 

+ Recent posts