Что я неправильно понимаю о прохождении указателей на массивы char?Передача указателя на массив C на функцию
Request pointer in fun: 0x7fffde9aec80 Response pointer in fun: 0x7fffde9aec80 Response pointer: (nil), expected: 0x7fffde9aec80 Response itself: (null), expected: Yadda
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int get_response(char *request, char **response) {
response = &request;
printf("Request pointer in fun: %p\n", request);
printf("Response pointer in fun: %p\n", *response);
return 0;
}
int main() {
char *response = NULL, request[] = "Yadda";
get_response(request, &response);
printf("Response pointer: %p, expected: %p\n", response, request);
printf("Response itself: %s, expected: %s\n", response, request);
return 0;
}
Не знаю. Какую часть вы не понимаете? –
@OliCharlesworth: Он не понимает, почему печатается не то, что он «ожидает»: «Указатель ответа: (nil), ожидается: 0x7fffde9aec80 Ответ сам по себе: (null), ожидается: Yadda' – ArjunShankar