프로그래밍

 3203, 1/161 회원가입  로그인  
   indra
   http://indra.linuxstudy.pe.kr
   [re] c 몆가지 명령어좀 질문이요!!

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_programming&no=8 [복사]


>strcat 이라는 명령어는 어떨떠 쓰는건가요
>strcpy 랑 가치요!!

먼저.. 이런것은.. 명령어가 아니라..
함수라고 합니다.. strcat() 함수, strcpy() 함수..
이렇게 부릅니다..
그리고.. strcat() 의 함수원형은

char *strcat(char *dest, const char *src);

로 되어 있습니다.
함수원형이라는것은 prototype 라고 하여, 해당 함수를 사용할때 필요한 조건을
기준으로 정해놓은것을 말합니다.
strcat() 함수의 기능은 문자열의 연결이 가장 기본적이 되며,
dest 변수의 문자열 뒤에 src 문자열이 연결되게 됩니다.

int main()
{
   char dst[10];
   char *src = "EFGH";
   strcpy(dst, "ABCD");
   strcat(dst, src);
   printf("dst: %s\n", dst);
}

위의 코드를 실행해보면 dst 의 출력값은 "ABCDEFGH" 가 됩니다.
조금 더 고급쪽으로 들어가면.. dst 뒤에 src 가 올때
dst 에 포함되어 있는 NULL 문자는 src 를 연결 한 다음 src 뒤로 이동하게 됩니다.
이해가 안가셔도.. 알아두시다가 나중에 프로그래밍을 어느정도 하시게 되면..
이해가 가실겁니다.

그리고 strcpy() 함수는
string copy(문자열 복사) 의 목적으로 함수원형은 다음과 같습니다.

char *strcpy(char *dest, const char *src);

strcat() 과는 다르게, src 변수에 저장된 문자열을 dest 의 처음부터 복사합니다.

int main()
{
    char dst[10];
    char *src = "ABCD";
    memset(dst, 0, 10); // dst 초기화.
    strcpy(dst, src);
    printf("dst: %s\n", dst);
}

위 코드의 실행 결과에서 dst 는 "ABCD" 를 출력합니다.
그리고.. 함수에 대한 궁금증이 있으시면..
먼저 man 페이지 활용을 해보세요..

참고로.. 보안을 위한 프로그래밍에 대해서..
strcpy() 와 strcat() 의 사용은 자제해줄것을 권고하고 있습니다.
이는 overflow 의 원인이 되므로, strncpy() 나 strncat() 처럼..
경계값을 설정하여, 검사하는 함수를 사용하라고 권고하고 있습니다.

  Hit : 5473     Date : 2003/09/05 01:14
[불법/스팸글로 신고하기]



    
소유 역시 인드라님 멋져요 ^^* 2003/09/05  
3203   C프로그래밍 답변좀..[1]     knagek
09/04 6982
3202     [re] C프로그래밍 답변좀..     admin
09/04 6452
3201   리눅스 c와 윈도우 c의 차이점을 알려주세요.,..[1]     카이저9
09/04 6562
3200     [re] 리눅스 c와 윈도우 c의 차이점을 알려주세요.,..     y2family
09/04 8160
3199     [re] 리눅스 c와 윈도우 c의 차이점을 알려주세요.,..     byun1219
05/08 2516
3198   c 몆가지 명령어좀 질문이요!![1]     darkstar12
09/04 5395
    [re] c 몆가지 명령어좀 질문이요!![1]     indra
09/05 5472
3196   불법인지 알려주세요     sdaemin
09/05 5761
3195     [re] 불법인지 알려주세요     admin
09/05 6466
3194       [re] [re] 불법인지 알려주세요     byun1219
05/08 2131
3193   C언어배우는중인데..[5]     ㅡ.ㅡ
09/05 5241
3192     [re] C언어 말인데요..^^;     소유
09/12 5513
3191   C언어 말인데요..^^;[1]     canrose
09/06 5366
3190     [re] C언어 말인데요..^^;     yl
09/06 4863
3189     [re] C언어 말인데요..^^;     byun1219
05/08 1920
3188   페이지 로딩시 즐겨찾기 자동으로 추가되기좀 가르쳐 주세요[2]     dnflwltj
09/06 5067
3187     [re] 페이지 로딩시 즐겨찾기 자동으로 추가되기좀 가르쳐 주세요     소유
09/13 5331
3186   C 언어를 배우는데요..ㅜㅜ[3]     nanaya
09/07 5718
3185     [re] C 언어를 배우는데요..ㅜㅜ     hkpco
09/07 5100
3184     [re] C 언어를 배우는데요..ㅜㅜ     byun1219
05/08 2525
1 [2][3][4][5][6][7][8][9][10]..[161]

Copyright 1999-2022 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org & Wowhacker.com