Я читаю в своем приложении и помещаю его в указатель. Я использовал таНос, так что я не уверен, что неправильноОшибка сегментации (сбрасывается ядром) при печати информации указателя
КОД:
#define BUFFER 30 //in my .h file
char *inStr;
inStr = malloc(sizeof(char*)*BUFFER);
scanw("%s", &inStr);
inStr[strlen(inStr)] = '\0';
mvwprintw(stdscr, 0, 0, "%s",inStr);
Я пытаюсь вывести его на борт Ncurses, и я не знаю, почему это происходит. Он падает, когда я нажимаю ввести для ввода
Что такое 'buffer'? Каково это содержание? Откуда вы знаете, что 'malloc()' был успешным? Что попадает в 'inStr'? Зачем даже писать 'inStr [strlen (inStr)] = '\ 0';' – John3136
'sizeof (char *)'? Что такое «БУФЕР»? –
Ты что-то сделал, хорошо. Вы уверены, что 'char *' не должен быть 'char'? Четвертая строка кажется совершенно бесполезной, поскольку 'scanw' должен прервать эту строку для вас (как вы думаете,' strlen' будет работать, если он не *?). И это: 'scanw («% s », & inStr);' должен быть 'scanw («% s », inStr);' – WhozCraig