Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> int to const char 
:(
    Опции темы
box
Дата 17.2.2011, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 27.2.2007

Репутация: нет
Всего: 0



есть данные из контейнера map : freq[input_string]
пытаюсь подставить данные в запрос :
Код

char a[3];
int b = freq[input_string];
*a = (char)b;//конвертируем в char

sql = "INSERT INTO banned (ip, host, hit) VALUES ('" +test[0]+ "','" +test[1]+ "', '" +a+ "')";
if(mysql_query(&conn,sql.c_str()) != 0){fprintf(stderr, "Error: can't execute INSERT-query\n");exit(1);}

но в базу в поле hit попадают крякозябры типа !?3 это когда тип таблицы var char а когда int то 0
а должно попадать целое число .
где косяк ?

Это сообщение отредактировал(а) box - 17.2.2011, 17:43
PM MAIL   Вверх
mes
Дата 17.2.2011, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 1
Всего: 250



Вы хотите представить int как строку ? 
http://www.cplusplus.com/reference/clibrary/cstdio/sprintf/
или
http://www.cplusplus.com/reference/clibrary/cstdlib/itoa/
...



Это сообщение отредактировал(а) mes - 17.2.2011, 17:43


--------------------
PM MAIL WWW   Вверх
box
Дата 17.2.2011, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 27.2.2007

Репутация: нет
Всего: 0



в моем компиляторе нет функции itoa а с sprintf я уже намучался  , компилятор ругается , может вы приведе пример на основе sprintf 
PM MAIL   Вверх
kometa_75
Дата 17.2.2011, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 24.10.2007

Репутация: нет
Всего: нет



Цитата(box @ 17.2.2011,  17:47)
в моем компиляторе нет функции itoa а с sprintf я уже намучался  , компилятор ругается , может вы приведе пример на основе sprintf
Код

char a[16] = {0}; /* Не надо жадничать. В 3 символа у вас влезет без усечения максимум 99, или это будет не С-строка*/

int b = freq[input_string];

/*убрать эту ересь*/
*a = (char)b;//конвертируем в char

/*вставить это*/
sprintf( a, "%d", b );

sql = "INSERT INTO banned (ip, host, hit) VALUES ('" +test[0]+ "','" +test[1]+ "', '" +a+ "')";
if(mysql_query(&conn,sql.c_str()) != 0){fprintf(stderr, "Error: can't execute INSERT-query\n");exit(1);}

где-то так
можно ещё глянуть на http://www.cplusplus.com/reference/clibrary/cstdlib/strtol/

Это сообщение отредактировал(а) kometa_75 - 17.2.2011, 18:03
PM MAIL   Вверх
fish9370
Дата 18.2.2011, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 15.4.2007
Где: Москва

Репутация: 2
Всего: 1



вы со своим C++ реально тупеете.. делать нужно проще..

Код

char sql[4096];
snprintf(sql, sizeof(sql), "INSERT INTO banned (ip, host, hit) VALUES ('%s', '%s', %d)", test[0], test[1], a);
if(mysql_query(&conn,sql) != 0) {
     fprintf(stderr, "Error: can't execute INSERT-query\n");
     exit(1);
}



--------------------
undefined
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0496 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.