Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

UrlDecode, Работа с кириллицей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Координаты вектора умножить на число http://www.cyberforum.ru/cpp-beginners/thread1118704.html
вот есть класс, мне нужно координаты вектора умножить на число,через функцию используя прототип.Как это сделать ? Функцию в С++ еще не проходили, сказали делать по подобию Си #include "stdafx.h"...
C++ Калькулятор в столбик Возникла проблема не понимаю почему при умножении 567 * 900 = 50103, (программа недробляна поэтому можно только умножать одинаковые цифры по количеству а точнее показывать цифры для сложение) ... http://www.cyberforum.ru/cpp-beginners/thread1118695.html
C++ Написать функцию выбора пунктов меню стрелками "вверх" "вниз"
Доброго всем времени суток.Пожалуйста подскажите как мне справиться с моей проблемой.Нужно написать функцию выбора пунктов меню стрелками "вверх" "вниз".Вот код #include <windows.h> #include...
Стек на массиве (выводит значение даже при пустом стеке) C++
Здравствуйте, есть код со стеком, вопрос касательно метода класса,а точнее о выводе элемента из стека - pop(). Дело в том что программа выводит значения стека, даже когда он пуст,это же приводит к...
C++ Перевести код с паскаля на C++ http://www.cyberforum.ru/cpp-beginners/thread1118690.html
//Помогите пожалуйста перевести с паскаля на С++ uses crt; type PList=^TList; TList=record inf:string; link:PList; end; var h,head,Pk:PList; s1,...
C++ Написать программу для подсчета количества одинаковых цифр в массиве из 5-ти элементов Только начал разбиратся в массивах. Помогите решыть. Написать программу для подсчета количества одинаковых цифр в массиве из 5-ти элементов. подробнее

Показать сообщение отдельно
Torument
0 / 0 / 1
Регистрация: 13.03.2014
Сообщений: 16

UrlDecode, Работа с кириллицей - C++

14.03.2014, 01:43. Просмотров 516. Ответов 1
Метки (Все метки)

Сам пишу на C#. Тут возникла задача "общания с прогой", написанной в С++ 6.0. Проблема возникла с передачей данных с русским текстом (как есть работает, но надо шифровать, поэтому заворачиваю в Base64, который как раз и неработает), при отсылке параметров решил кодировать в urlcode (например %D0%9F%D0%BE%D0%BC%D0%BE%D0%B3%D0%B8%D1%82%D0%B5%20%D0%BF%D0%BE%D0%B6%D0%B0%D0%BB%D1%83%D0%B9%D1%81%D1%82%D0%B0!!!). делаю так:


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
inline int ishex(int x)
{
    return  (x >= '0' && x <= '9')  ||
        (x >= 'a' && x <= 'f')  ||
        (x >= 'A' && x <= 'F');
}
 
int decodeUrl(const char *s, char *dec)
{
    char *o;
    const char *end = s + strlen(s);
    int c;
 
    for (o = dec; s <= end; o++) {
        c = *s++;
        if (c == '+') c = ' ';
        else if (c == '%' && (  !ishex(*s++)    ||
                    !ishex(*s++)    ||
                    !sscanf(s - 2, "%2x", &c)))
            return -1;
 
        if (dec) *o = c;
    }
 
    return o - dec;
}
Строки выше не мои, нашел - применил. Работает только с символами. Погуглить не только пробовал, но и яндексил и маэлрил и аскил - день на это убил. Хотя очень странно что решение так и не нашлось (все решения что есть с латиницей и символами работают). Написать код самому не прадставляется возможным.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru