Форум русскоязычного сообщества Ubuntu


Автор Тема: char* в char[]. [решено]  (Прочитано 1130 раз)

0 Пользователей и 1 Гость просматривают эту тему.

iks

  • Автор темы
  • Гость
char* в char[]. [решено]
« : 04 Марта 2011, 16:55:01 »
Есть вот такой скрипт, вопрос перевести char* в char[] или принять QUERY_STRING в переменную char[] а не в char*
(Нажмите, чтобы показать/скрыть)
Если открываю строку
char md5[] = "476ggf6ed59d3fb37c004f3e3595a623";
то все работает
« Последнее редактирование: 08 Марта 2011, 09:27:25 от iks »

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: char* в char
« Ответ #1 : 04 Марта 2011, 18:20:24 »
Я что-то понять не могу, что вы хотите получить. Если вы объявляете md5 как: char md5[]; то md5 будет указателем на char.

iks

  • Автор темы
  • Гость
Re: char* в char
« Ответ #2 : 04 Марта 2011, 18:25:32 »
Я что-то понять не могу, что вы хотите получить. Если вы объявляете md5 как: char md5[]; то md5 будет указателем на char.
Нет сейчас нашел как это перевернуть, QUERY_STRING получается в переменной char*, а в mysql_query(MYSQL *mysql, const char *q) от сюда и танцы
char md5[33];
strcpy(md5, getenv("QUERY_STRING"));
вот так все проходит конечный код такой получился
(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 08 Марта 2011, 00:04:19 от iks »

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: char* в char
« Ответ #3 : 04 Марта 2011, 18:44:54 »
А если объявить md как: char *md = malloc(33*sizeof(char));?
Вместо множественных вызовов strcat() можно использовать sprintf(), например:
sprintf(string, "SELECT * FROM users WHERE md5='%s' %s", md5, srt1);

Оффлайн Not eXist

  • Активист
  • *
  • Сообщений: 916
    • Просмотр профиля
Re: char* в char
« Ответ #4 : 04 Марта 2011, 20:31:32 »
А вместо str-функций вообще использовать memcpy/cmp

iks

  • Автор темы
  • Гость
Re: char* в char
« Ответ #5 : 05 Марта 2011, 01:59:24 »
Спасибо за советы, просто недавно перешел на с++ менее полугода, пока подготавливаю клиента и новый движок, буду пробовать что лудше и эфективней работает.
До этого php, as3, жаба в основе были =)

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Re: char* в char [решено]
« Ответ #6 : 05 Марта 2011, 03:37:20 »
Это не C++, это чистый С. И кстати, программы на С - это не скрипт.

iks

  • Автор темы
  • Гость
Re: char* в char [решено]
« Ответ #7 : 05 Марта 2011, 09:58:28 »
Ну это в курсе, просто сам клиент и вообще что пишу не для работы на сервере делаю на QT, да и чтоб не танцевать лишнее с бубном при сбрке это тоже пишу в файлах .cpp  и собираю g++, пока не большие проги заварачиваю в один файл, далее посмотрю может и по class разнесу, хотя давно привык лудще делать отдельно на каждое действие и при необходимости подключать, то есть лишнее не гонять в операционе.
« Последнее редактирование: 05 Марта 2011, 10:45:21 от iks »

 

Страница сгенерирована за 0.049 секунд. Запросов: 25.