Я есть эта функцияНевозможно изменить переменную указатель, передаваемый в качестве аргумента функции
int rt_exist(struct route_entry* prev_rte) {
prev_rte = rte_head; //This doen't assigns rte_head to prev_rte
return 0;
}
где rte_head является инициализированный STRUCT route_entry * переменную указатель. Но в приведенном выше случае «prev_rte» не присвоено значение rte_head.
Кстати, я, если я что-то вроде этого
int rt_exist(struct route_entry* prev_rte) {
struct route_entry* rte_new;
rte_new = rte_head; //But this can
return 0;
}
выше назначение происходит плавно. Проблема возникает, когда переменная указателя передается как аргумент функции.
Это странный вопрос с небольшими подробностями, но кто-то может указать мне на возможное направление или что-то не так, как я мог бы делать.
Изменение подписи функции 'Int rt_exist (структура route_entry * & prev_rte) {', вы изменяете копию этого указателя локальной только функции. –
Этот код C или код C++? Ответы совершенно разные для двух разных языков. –
Возможно, вам сначала нужно узнать о конструкциях элементарного языка (таких как вызовы функций и типы аргументов), прежде чем писать программы ... – Walter