Простите меня, если это слишком просто, но я получаю сбои, и кажется, что я действительно не понимаю вещи.Получение указателя char от функции
У меня есть глобальная переменная:
char *incomingData="";
тогда я эту функцию, которая получает некоторые данные из некоторых аппаратных:
void readWifDataAsSever(char* reqData)
{
char data[100]={0};
//...
if (len > 0)
{
for(uint32_t i = 0; i < len; i++)
data[i]=(char)buffer[i];
ParseGetRequest(data); //some other manipulation
reqData=data;
}
else
reqData="";
}
Тогда я пытаюсь вызвать эту функцию из другого места, дать это глобальная переменная и получить новые данные от функции:
readWifDataAsSever(incomingData); //incoming data is the global i just show
//check length of incomgin data
Well obvi ously, не только, что я делаю что-то неправильно, я действительно не получаю вещи с указателями.
Я знаю, что data's
жизнь есть только внутри функции.
Я пытаюсь понять, почему это неправильно и как вы должны это делать. спасибо.
Я не получаю вас. Если вы знаете, что область переменных данных является локальной, в чем вопрос? – LPs
Как вы действительно должны это делать? :) – Curnelious
Интересно, почему вы не получите сообщение об ошибке на 'char * incomingData =" ";' ... – Psytho