현금화 된 ATM이 없으므로이 코드 스 니펫에서 내가 잘못한 것을 지적하기 위해 paypal을 통해 0.25 달러를 첫 번째 사람에게 제공하고 있습니다 -이 사이트를 위반하지 않았 으면 좋겠습니다. 아무도 모욕하지 않는다.C의 함수에 전달 된 2D 문자 배열 수정
함수에서 다차원 배열을 수정하고 싶습니다. 함수에서 수정되는 동안 범위가 주 함수로 돌아 오면 배열은 변경되지 않습니다.
함수 헤더는 수정할 수 없습니다. 도와 줘서 고마워. 이미 주에 할당하기 때문에
void getAlignment(char*s1, char*s2, char*s3, char*aligned[])
{
/***********************
Code here which assigns
char**tmp to "different" "words"
***********************/
printf("tmp in getAlignment function\n");
printf("%s %s\n", tmp[0], tmp[1]); // prints "different words", as expected
aligned = tmp;
}
int main(void)
{
// skipped some code
char** aligned = (char**)malloc(sizeof(char*)*2);
aligned[0] = "should";
aligned[1] = "change";
printf("%s %s\n", aligned[0], aligned[1]); // prints "should change", as expected
getAlignment(s1, s2, transcript, aligned); // how do i change aligned during this call?
printf("%s %s\n", aligned[0], aligned[1]); // prints "should change"
return 0;
}
getAlignment() 함수에서 수행하려는 작업은 무엇입니까? 예상되는 결과는 무엇입니까? – user207064
아이디어는'main'에서'aligned'했습니다.'getAlignment' 메소드가 변경된 항목을 가리켜서 getAlignment에서 변경하고 싶습니다. – Rob