Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 27.04.2019
Сообщений: 12
1

argv принимает непонятные значения

25.05.2022, 20:38. Показов 1189. Ответов 2

Author24 — интернет-сервис помощи студентам
Здравствуйте. Учусь работать на Debian. Есть проект на C в среде qt creator. Функция getopt всегда возвращает -1. Соответственно, в цикл код никогда не заходит. При проверке принимаемых значений выяснилось, что argv принимает непонятно что (скриншот прилагаю). В чём может быть проблема?
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
int main(int argc, char *argv[])
{
    CTX = (TGOSTHashContext*)(malloc(sizeof(TGOSTHashContext)));
 
    int hash_size = DEFAULT_HASH_SIZE;
    int opt;
    while ((opt = getopt(argc, argv, "htf:s:d:")) != -1)
    {
        switch (opt)
        {
            case 't':
                GetHashTest();
            break;
            case 'd':
                if (strcmp(optarg, "256") == 0)
                    hash_size = 256;
                if (strcmp(optarg, "512") == 0)
                    hash_size = 512;
            break;
            case 'h':
                printf("GOST 34.11-2012 \"Stribog\"\nstribog.exe [-d <256 or 512>] [-s <string>] [-f <file>]\n");
            break;
            case 'f':
                GetHashFile(optarg, hash_size);
            break;
            case 's':
                GetHashString(optarg, hash_size);
            break;
        }
    }
    return 0;
}
Изображения
 
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2022, 20:38
Ответы с готовыми решениями:

Выводятся непонятные значения
Есть код программы: #include &lt;iostream&gt; using namespace std; class gadget { protected: int...

Что есть argc и **argv в функции int main(int argc, char **argv)?
Здраствуйте, уважаемые кодеры! Что означает argc и **argv в функции int main(int argc, char...

Непонятные значения из массива структур
Сайт выделяет этим цветом #208080 &quot;проблемные значения. Почему, если значение начинается с 0..., то...

Фильтр Гауса, непонятные значения
Доброго времени суток! Пытаюсь написать фильтр Гаусса для курсовой. Дела предстоят так: в...

2
590 / 413 / 135
Регистрация: 02.10.2008
Сообщений: 1,745
Записей в блоге: 1
25.05.2022, 23:13 2
Приводи полный код, т.к. с твоим getopt() УМВР:
Bash
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
50
faust@Rizen53600 ~/П/C/РАзная всячина> cat 1.c
#include <unistd.h>
#include <stdio.h>
#include <string.h>
 
int main(int argc, char *argv[])
{
    int opt;
    while ((opt = getopt(argc, argv, "htf:s:d:")) != -1)
    {
        switch (opt)
        {
            case 't':
                    puts("\nопция -t");
/*                GetHashTest();*/
            break;
            case 'd':
                    puts("\nопция -d ");
                if (strcmp(optarg, "256") == 0)
                    /*hash_size = 256;*/ puts("256");
                if (strcmp(optarg, "512") == 0)
                    /*hash_size = 512;*/ puts("512"); 
            break;
            case 'h':
                printf("\nGOST 34.11-2012 \"Stribog\"\nstribog.exe [-d <256 or 512>] [-s <string>] [-f <file>]\n");
            break;
            case 'f':
                     puts("\nопция -а");
/*                GetHashFile(optarg, hash_size);*/
            break;
            case 's':
                    puts("\nопция -s");
/*                GetHashString(optarg, hash_size);*/
            break;
        }
    }
    return 0;
}⏎                                                                                                                                                                                            
faust@Rizen53600 ~/П/C/РАзная всячина> ./a.out -d 256 -s 123412 -f **** -h
 
опция -d 
256
 
опция -s
 
опция -а
 
GOST 34.11-2012 "Stribog"
stribog.exe [-d <256 or 512>] [-s <string>] [-f <file>]
faust@Rizen53600 ~/П/C/РАзная всячина>
0
0 / 0 / 0
Регистрация: 27.04.2019
Сообщений: 12
26.05.2022, 20:32  [ТС] 3
Код найден на просторах, но должен работать
Вложения
Тип файла: zip классическая реализация стрибог.zip (8.3 Кб, 0 просмотров)
0
26.05.2022, 20:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.05.2022, 20:32
Помогаю со студенческими работами здесь

Бесконечный цикл while, выводятся непонятные значения
Возникает проблема!Ввожу шаг h=0.05,после этого выводит абсолютную дребедень и цикл не...

Непонятные отрицательные значения
Привет всем! Пишу опять насчет своей программы, так как снова в непонятках. Начну с кода: for...

Программа выводит непонятные значения
Доброго времени суток! Пишу вот такой код: import random class Coin(): def...

При вычислении выдает непонятные значения
При вычислении выдает непонятные значения.

JSON не принимает значения
Здравствуйте! Пытась парсить данные с MySQL, но не получается. Вот PHP-код: $mess =...

QHash не принимает значения...
подскажите где туплю.. есть файл: suite_api.h: ..... private: QHash &lt;int, QString&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru