2017-10-25 5 views
0

나는 그 값을 포함한 전체 char 배열을 다른 함수에 전달하는 방법을 연구 중이다.값을 사용하여 전체 문자 배열을 다른 함수에 전달하는 방법은 무엇입니까?

#define STACK_SIZE 100 
void Prefix_Conversion(char Infix_Postfix_Expression[STACK_SIZE]); 

int main(){ 
    //some process code here 
    Prefix_Conversion(Infix_Postfix_Expression[STACK_SIZE]); 
} 

void Prefix_Conversion(char Infix_Postfix_Expression[]){ 
    //some code here 
} 

그것은 나에게의 오류를 제공합니다 : 여기에 코드는

[오류] '숯불 *'[F-허용] [참고] (1)의 인수를 initilizing에 '문자'에서 유효하지 않은 변환 'void Prefix_Conversion (char *)'일 경우

프로토 타입, 인수 및 배열이 맞습니까?

+0

가능한 복제본 https://stackoverflow.com/questions/17131863/passing-string-to-a-function-in-c-with-or-with-pointers –

답변

0

Prefix_Conversion(Infix_Postfix_Expression[STACK_SIZE]);을 사용하면 char *이 필요한 함수에 한 문자를 전달하므로 오류 메시지가 표시됩니다.

단순히 Prefix_Conversion(Infix_Postfix_Expression);

+0

감사합니다! : D 조 지금 작동! –

+0

... 그리고 그 접근은 또한 한계입니다. :) –

0

당신이 main

Prefix_Conversion(Infix_Postfix_Expression[STACK_SIZE]); 
에서 함수를 호출

void Prefix_Conversion(char *Infix_Postfix_Expression); 

가 동등 서명 통과

Infix_Postfix_Expression[STACK_SIZE]은 char에 대한 포인터가 아니라 char에 대한 포인터입니다.

관련 문제