Я играю с библиотекой openSSL, и мне нужно, чтобы я расчесывал указатели, и у меня возникают трудности.Переписывание возвращаемого указателя на выходной параметр
У меня есть метод Objective-C:
-(unsigned char *)encryptTake1:(unsigned char *)input inputLength:(int)inLen outputLength:(int*)outLen;
Это принимает некоторые данные, шифрует его и возвращает указатель на данные и длину данных в качестве выходного параметра.
Я хочу изменить это, чтобы зашифрованные данные также обрабатывались как выходной параметр, а возвращаемое значение используется для указания успеха или отказа. Это то, что у меня есть:
-(int)encryptTake2:(unsigned char *)input inputLength:(int)inLen output:(unsigned char *)output outputLength:(int*)outLen;
Это не работает. Что я делаю не так? Я думаю, проблема в том, что (unsigned char *)
является неправильным. Если (unsigned char *)
ошибочно, я полагаю, что мне также нужно будет изменить способ ссылки на output
в рамках метода. Как?
спасибо - что сделал это! Я тоже путался с моими '&' и '*' в вызывающей функции. В вызывающей функции var определяется как «unsigned char *» и префикс «&» в вызове функции. Внутри encryptTake2: 'все ссылки на var имеют префикс' * '. Мне нужно перечитать главу 5 книги C. –