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

Перебор символов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Упорядочить элементы списка по возрастанию http://www.cyberforum.ru/cpp-beginners/thread619105.html
Линейный односвязный список.Узел списка-целое число.Упорядочить элементы списка по возрастанию...Помогите пжлст кто сможет
C++ Работа с CToolBar У меня был тулбар в проекте класса CToolBar. я решил добавить еще один, тулбар себе, он добавился, однако прилепился (выравнился) к правой части окна моего приложения... Как сделать так чтобы он шел сразу после моего предыдущего тулбара... а то один у меня слева а второй справа и вышлядит как то вообще не очень... http://www.cyberforum.ru/cpp-beginners/thread619070.html
C++ Оператор return
Помогите пожалуйста разобраться как работает оператор return. Что происходит после return n и после return fibonacci (n-1) + fibonacci (n-2); #include <iostream> unsigned long fibonacci (unsigned long); main() { unsigned long result, number; cout << "Введите целое число :"
C++ Реализация B+ дерева
Не совсем уверен, что сюда, но где спросить не знаю. Может кто-нибудь подсказать, где взять готовую реализацию В+ дерева, но не LGPL.
C++ Перевод выражения в обратную польскую запись http://www.cyberforum.ru/cpp-beginners/thread619054.html
Товарищи! Нужна помощь. С помощью класса стек на основе динамического массива надо перевести инфиксное выражение в постфиксное с помощью алгоритма сортировочной станции. Входные данные должны быть в файле. Преподаватель посоветовал использовать для чтения строки из файла функцию fgets. Входные данные в виде строки, выходные так же должны быть в виде строки. Помогите, пожалуйста, вот какой...
C++ Перегрузка operator= Возможно ли перегрузить оператор= так, что бы можно было написать? val = {10, 20, 15}; подробнее

Показать сообщение отдельно
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120

Перебор символов - C++

04.07.2012, 17:07. Просмотров 1686. Ответов 2
Метки (Все метки)

Есть такой хороший код для перебора символов:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "stdio.h" 
#include "windows.h" 
#include <conio.h>
 
int main(int argc, char* argv[]) 
{
        static char szPassword[256];                  // Буфер для хранения текущего пароля
        ZeroMemory(szPassword, sizeof(szPassword));  // Начинаем перебирать с пустого пароля
 
        static char szAlphabet[256];               // Алфавит, т.е. набор символов для перебора 
        strcpy(szAlphabet, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_0123456789"); 
 
        static unsigned char bAlphabet[256]; 
        ZeroMemory(bAlphabet, sizeof(bAlphabet)); 
 
        int i = 0, k = 0; 
        while (TRUE) 
        { 
                bAlphabet[k] = (unsigned char)szAlphabet[i]; 
                if (!szAlphabet[i]) 
                        break; 
                k = (unsigned char)szAlphabet[i]; 
                i++; 
        } 
 
        while (TRUE) 
        { 
                __asm 
                { 
                    pushad 
                    mov edi,offset szPassword 
                    mov ebx,offset bAlphabet 
                L1: movzx eax,byte ptr [edi] 
                    xlat 
                    cmp al,0 
                    je L3 
                    mov [edi],al 
                    jmp L5 
 
                L3: xlat 
                    stosb 
                    jmp L1 
 
                L5: popad 
                } 
                printf("%s\n", szPassword); // И как тут сравнивать?
        } 
        return 0; 
}
И вот вопрос: если после printf("%s\n", szPassword); что-нибудь делать, например вызывать getch(); то всё работает нормально, а если вставить проверку слова
C++
1
if(szPassword=="Pass"){printf("Фук йеех! Подошло!");}
то проверку if программка игнорирует. Я подозреваю, что так szPassword=="Pass" сравнивать нельзя, тогда напишите пожалуйста как сравнивать можно или предложите способы ускорения процесса перебора.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru