Советую все-таки книжку по С(С++ - не трогать!) почитать, а не по МК, особенно раздел про символы, строки и типы данных.
Sun-dey писал(а):elmot писал(а):sscanf, например
Можно примерчик ? Чесслово моск сломал.
Что-то правдоподобное получается если использовать
sprintf, printf. Но нюансы как всегда не уловил...
В любой книжке по С есть примеры, переписать что-то оттуда сюда делу не поможет.
Sun-dey писал(а):Сделал массив на 4 символа, char massiv_4 [4]; в него перенес нужные данные.
printf("massiv_4 %s\r\n",massiv_4); при вот таком выводе получается нужная строка, но мне нужно десятичное число для последующей обработки
Честный вывод строки, все правильно.
Sun-dey писал(а):printf("massiv_4 %u\r\n",massiv_4); вот так не получается...точнее получается число, но не то что ожидается:)
Например: в массиве 5-6-7-8
вот в этом случае %s в терминале 5678
а если так %u в терминале 1319
В printf во втором аргументе уходит АДРЕС строки. %u - и printf трактует этот адрес как целое число. Волею Аллаха строка лежит по адресу 1319.
Sun-dey писал(а):Всяческие попытки преобразовать сначала в строку а потом в число
типа sprintf (LcdBuffer,"%s",massiv_4);безуспешны, получается что угодно, только не 22136.
Я конечно понимаю, что "МК это просто ©" но чтобы настолько
sprintf ни при каких условиях не превращает строку в число. Это ВЫВОД форматированной строки в строковый буффер. Разбирают строки функции scanf(из стандартного ввода),fscanf(из файла),sscanf(из памяти).
Кстати, о птичках. Ни при каких условиях не следует использовать sprintf. Он не следит за границей выходного буфера, велик шанс за эту границу вылезти и заполнить мусором рядом лежащие значения. snprintf - следит за границей, вот его и мучайте.