Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[309] Re:문자열을 swap하는데 문제점..
jabberwock [] 2183 읽음    2002-03-17 11:09
해결을 했습니다..

우선 temp를 char형으로 바꿔서.. char temp[10]; 으로 하고..
변수의 값을 바꾸는데 strcpy를 사용했더니 아무문제 없이 실행이 되더군여...

즐프하세여.. ^^

jabberwock 님이 쓰신 글 :
: 우선 코스를 보시져..
:
: #include<stdio.h>
: #include<stdlib.h>
: #include<string.h>
:
: void swap(int *a, int *b)
: {
:     int temp;
:
:     temp=*a;
:     *a=*b;
:     *b=temp;
: }
:
: void main()
: {
:     int i,j;
:     char word[5][10];
:     int num_length[5];
:
:     for(i=0; i<5; i++)
:     {
:         printf("Enter your Words : >> ");
:         scanf("%s",word[i]);
:     }
:
:     for(i=0; i<5; i++)
:         num_length[i]=strlen(word[i]);
:    
:     printf("<< Input Words >>\n");
:     for(i=0; i<5; i++)
:         printf("%s:\tlength = %d\n",word[i],num_length[i]);
:
:     for(i=0; i<5-1; i++)
:     {
:         for(j=i+1; j<5; j++)
:         {
:             if(strcmp(word[i], word[j])>0)
:                 swap(word[i],word[j]);
:         }
:     }
:
:     printf("\n<< Sorted Words >>\n");
:     for(i=0; i<5; i++)
:         printf("%s:\tlength = %d\n",word[i],num_length[i]);
: }
:
: 문자열을 swap해야 하는데..
: 이 프로그램을 실행 시키면.. 두가지 문제점이 생깁니다..
:
: 첫번째는 swap(word[i],word[j])부분에 char형을 함수로는 int형으로 받아서 문제가 생기고..
:
: 두번째는 실행을 하면 문자열을 swap으로 넘길대 포일터를 사용하니.. 전체의 문자열이 바뀌지 않고
:   입력한 만큼만 바뀝니다. 예를 들어서..
:   첫번째 kiwi 두번째 apple라고 하면..
:   결과는 첫번재 appl 두번째 kiwie 라고 나옵니다.
:  
: 아무리 생각해도 어케 해야하는지 모르겠습니다..
: 워낙 초보에다가 프로그램을 별루 안짜봐서..
: 그럼 답변 부탁드립니다.
:

+ -

관련 글 리스트
308 문자열을 swap하는데 문제점.. jabberwock 2711 2002/03/17
309     Re:문자열을 swap하는데 문제점.. jabberwock 2183 2002/03/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.