2014-12-05 6 views
-6

이 검색 방법은 어떻게 수정합니까? 이 부분은 클라이언트에게 클라이언트 ID를 검색하도록 요청하는 switch 문입니다. 이 검색 방법은 어떻게 수정합니까?

case 2: printf("Enter the client ID to search for: "); 
        scanf("%d", searchID); 
        searchClient(searchID, pcli, clCount); 
        foundAt = searchClient(searchID, pcli, clCount); 
        if(foundAt >= 0) 
         printf("%d is found at position %d in the array", searchID, foundAt); 
        else 
         printf("%d is not found anywhere", searchID); 
       break; 

는 경우 검색 기능이 문자열을 원하는 2

int searchClient(char* searchID, client* pcli, int clCount) 
{ 
    int i = 0; 
    for(i = 0; i < clCount; i++) 
    { 
     if(strcmp(searchID,(pcli + i)->clID)==0) 
     { 
      return i; 
     } 
    } 
    return -1; 
}//end searchClient 
+0

여기에서 해결할 사항? –

+0

'searchID' 란 무엇입니까? 'scanf '에 대한 인자가 포인터가되어야한다는 것을 알지? –

+1

@ JoachimPileborg : 그것은 놀랍지 만 :'char * searchID'입니다. 아야. – Zeta

답변

1

에서 호출되는 검색 방법 자체입니다,하지만 당신은 그것을 정수를 제공하고, perhps는 다음과 같이 입력 대화를 변경 :

printf("Enter the client ID to search for: "); 
{ 
    char mybuffer[100]; 
    scanf("%99s", mybuffer); 
    foundAt = searchClient(mybuffer, pcli, clCount); 
} 
관련 문제