У меня есть функция, выводящая данные структуры d в шестнадцатеричном формате ( 51F9 3CF5 ) как мне сделать вместо вывода запись в массив? Пробовал sscanf(p,"%X",buf в цикле, но функция вообще перестала работать, даже ошибку при компиляции не выдавало.
на с++ непомню точно, но что-то типо того a = []; for (int i; i<10; i++) { if (i != 10) { a = [i]; } } Code на с++ непомню точно, но что-то типо того a = []; for (int i; i<10; i++) { if (i != 10) { a = [i]; } }
Pandazz, у тебя переменная "d" - это тип usigned int, а функция dump скорее всего требует массив символов (unsigned char*).
Pandazz, я тебе ответил почему у тебя не работает, sscanf - ожидает первым параметром массив символов (char *), а ты ему даешь беззнаковое целое (unsigned int), структура у тебя так-же не является массивом символов. Попробуй вместо printf (в функции dump), создать массив символов и использовать sprintf(тоже самое, но данные сохраняются в массив символов), после этого уже из массива символов доставать данные в шестнадцатеричном формате.