본문 바로가기
SAS/SAS 함수

【SAS 함수】 334. PTRLONGADD

by 기서무나구물 2021. 10. 10.

포스팅 목차

    o PTRLONGADD

     


    32비트나 64비트에서 포인터 주소를 문자변수로 반환한다.

    Category: 문자열 비교

     


    문 법


    PTRLONGADD
     (pointer<,amount>)


    Arguments

         pointer

              는 포인터 주소가 가르치는 문자열.

     


    참 고

    PTRLONGADD는 포인터 연산을 수행한다.

     


    관련 함수

    함수명 함수내용
    ADDR 32비트 프랫폼에서 메모리 주소를 숫자 변수로써 반환한다.
    ADDRLONG 32비트와 64비트 프랫폼에서 해당 변수의 메모리 주소를 문자변수로 반환한다.
    CALL POKE 32비트 플랫폼에서 값을 메모리에 직접 작성한다.
    CALL POKELONG 32bit와 64bit 플래폼 메모리에 직접 값을 작성한다.
    PEEK 32비트 platform에서 숫자변수의 메모리 주소의 항목(내용)을 저장한다.
    PEEKC 메모리에서 문자변수에 대한 지정한 위치(주소)에 저장된 데이터를 Access한다.
    PEEKLONG 32비트와 64비트 platforms에서 숫자 변수에 대한 메모리의 데이터를 Access한다.
    PEEKCLONG 32비트와 64비트 platforms에서 문자 변수에 대한 메모리의 데이터를 Access한다.
    PTRLONGADD 32비트나 64비트에서 포인터 주소를 문자변수로 반환한다.

     


    예 제

    예 제 1 :

    addrlong함수를 통하여 x변수의 메모리 주소를 반환받고, ptrlongadd함수를 통하여 포인터 주소를 문자변수로 반환받는다. peekclong함수는 포인터 주소 y에서 length 1만큼을 찾아온다.

     

    SAS Statements
    data _null_;
         x = 'ABCDE';
         y = ptrlongadd(addrlong(x),0);
         put y=;
    
         z = peekclong(y,1);
         put z=;
    run;

     

    Results
    y=픲
    z=A

     


    예 제 2 :

    위 예제와 참고하여 살펴보면, X변수에서 위치1(B)에서부터 length 2자리를 가져온다.

    SAS Statements
    data _null_;
         x = 'ABCDE';
         y = ptrlongadd(addrlong(x),1);
         put y=;
    
         z = peekclong(y,2);
         put z=;
    run;

     

    Results
    y=?
    z=BC

     


    SAS 함수(SAS Function) 리스트 링크

     

    엑셀(EXCEL)과 SAS 함수(SAS Function) 비교 리스트 링크

     

    SAS 데이터 스텝 구문 리스트(SAS Data Step Statement)
    반응형

    'SAS > SAS 함수' 카테고리의 다른 글

    【SAS 함수】 336. PUTC  (0) 2021.10.10
    【SAS 함수】 335. PUT  (0) 2021.10.10
    【SAS 함수】 333. PRXPOSN  (0) 2021.10.10
    【SAS 함수】 332. PRXPARSE  (0) 2021.10.09
    【SAS 함수】 331. PRXPAREN  (0) 2021.10.09

    댓글