The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"преобразование массива шестнадцатеричных чисел в строку"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от developer1 (ok) on 15-Май-07, 14:23 
Привет всем! Получаю от контроллера через com-порт код карты в шестнадцатеричном виде побайтно:59,72,3Е,2,1 Подскажите как его предбразовать в строку вида "59723Е0201", так он сохранен в mySQL базе.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от devcoder (ok) on 15-Май-07, 15:44 
>Привет всем! Получаю от контроллера через com-порт код карты в шестнадцатеричном виде
>побайтно:59,72,3Е,2,1 Подскажите как его предбразовать в строку вида "59723Е0201", так он
>сохранен в mySQL базе.

можно так:

sscanf(str,"%2x%2x%2x%2x%2x",
            &bin[0], &bin[1], &bin[2], &bin[3], &bin[4], &bin[5])

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от developer1 (ok) on 15-Май-07, 16:28 
Спасибо, попробовала, только потом функция printf("%s\n",str) выводит эту строку в виде каких-то квадратиков и т.п. Может я что не так делаю?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от devcoder email(ok) on 15-Май-07, 17:03 
> Может я что не так делаю?

кусок кода


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от NuINu (??) on 15-Май-07, 17:51 
>>Привет всем! Получаю от контроллера через com-порт код карты в шестнадцатеричном виде
>>побайтно:59,72,3Е,2,1 Подскажите как его предбразовать в строку вида "59723Е0201", так он
>>сохранен в mySQL базе.
>
>можно так:
>
>sscanf(str,"%2x%2x%2x%2x%2x",
>            
>&bin[0], &bin[1], &bin[2], &bin[3], &bin[4], &bin[5])

не понимаю за чем здесь это? он же байты получает в bin, а в str нужно вывести 0x59,0x72 и тд.
так надо не скан принт!
  sprintf(str,"%02x%02x%02x%02x", bin[0], bin[1], bin[2], bin[3]).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от devcoder email(ok) on 15-Май-07, 17:58 
> не понимаю за чем здесь это? он же байты получает в bin, а в str нужно вывести 0x59,0x72 и > тд. так надо не скан принт!

точно, сорри, зашился - привёл примет для "обратной ситуации"


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "преобразование массива шестнадцатеричных чисел в строку"  
Сообщение от developer1 (ok) on 16-Май-07, 08:27 
Спасибо! С sprintf все работает как надо!
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру