Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
1 / 1 / 0
Регистрация: 17.01.2020
Сообщений: 33

Чтение 16-ичных чисел из текстового файла

09.07.2025, 08:40. Показов 9037. Ответов 75
Метки нет (Все метки)

Доброго времени ! Подскажите , как сделать чтение чисел из файла , прочитал кучу всяких примеров , только сильнее запутался.
Есть файл , в нем заголовок вида
C++
1
" Бла Бла Бла :"
и далее числа вида
C++
1
2
3
0x000001,0x000002,0x000003,0x000004,0x000005,0x000006,0x000007,0x000008,0x000009,0x000010,0x000011,0x000012,0x000013,0x000014,0x000015,0x000016,
0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0xffffff,0xffffff,0x000000,0xffffff,0xffffff,
0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x100099
мне нужно считать числа после "0x" в массив интов.
заголовок я читаю
C++
1
2
3
4
 
ifstream file("primer.txt");
getline(file,line,'\n');
        cout << line<<endl;
После этого у меня указатель попадает на первое число. Далее в цикле я читаю до конца, т.к количество чисел известно.

C++
1
2
3
 getline(file,line,',');       // читаю 0х00000 до запятой 
                     line2 = line.substr(2, 6);         // отбрасывю 0х           
                    cout << line2;
и сталкиваюсь с тем, что после 16й считанной строки выводится один символ"х".
Я так понимаю это из за наличия в файле символа перевода строки '\n'. и дальше я застопорился, не могу придумать как убрать этот символ, получается какой-то нерабочий изврат из кучи условий и проверок. Как организовать рабочий ввод чисел ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.07.2025, 08:40
Ответы с готовыми решениями:

Конвертер целых чисел для преобразования в 16-тиричную, 8-ричную, 3-ичную, 2-ичную системы
Калькулятор для конвертера целых чисел в системы счисления: 16-тиричную, 8-ричную, 3-ичную, 2-ичную

Перевести 16-ичное текстовое значение в целое число
Есть string значения '0x99' как записать это как байт в переменную byte=0x99 привер: String...

Прочитать из файла числа в 16-ичной кодировке
Добрый вечер! Подскажите пожалуйста. У меня в файле записана следующая строка b6589fc6abdc8ac. Я её...

75
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
11.07.2025, 14:58
собсно, если посмотреть на

C
1
2
3
0x000001,0x000002,0x000003,0x000004,0x000005,0x000006,0x000007,0x000008,0x000009,0x000010,0x000011,0x000012,0x000013,0x000014,0x000015,0x000016,
0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0xffffff,0xffffff,0x000000,0xffffff,0xffffff,
0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x100099
то становится понятно, что это валидное для C++ выражение, если представить его как инициализацию вектора.

Вот пусть он его и разбирает

prepare.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <fstream>
#include <string>
#include <iostream>
int main()
{
    std::ifstream inputFile("primer.txt");
    std::ofstream outputFile("bla-bla.cpp");
    std::string line;
    std::getline(inputFile, line); // Skip the first line
    outputFile << "#include <vector>\nstd::vector<int> a = {";
    while (std::getline(inputFile, line)) outputFile << line;
    outputFile << "};";
    inputFile.close();
    outputFile.close();
    return 0;
}
на выходе после исполнения prepare получается файл bla-bla.cpp
C++
1
2
#include <vector>
std::vector<int> a = {0x000001,0x000002,0x000003,0x000004,0x000005,0x000006,0x000007,0x000008,0x000009,0x000010,0x000011,0x000012,0x000013,0x000014,0x000015,0x000016,^M0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0xffffff,0xffffff,0x000000,0xffffff,0xffffff,^M0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x000000,0x100099^M};
который включается с помощью #include в целевой файл
C++
1
2
3
4
5
6
#include <iostream>
#include "bla-bla.cpp"
int main()
{
    for (const auto& element : a) std::cout << element << " ";
}
prepare.cpp и bla-bla.cpp с зависимостями включаются в сборку
0
13.07.2025, 05:05

Не по теме:

А еще бывает что если данные некорректны (напр пропущена запятая или буква вместо цифры и.т.п.) - нужно сообщать хотя бы номер строки где это случилось, а еще лучше + позицию и причину (что не нравится).

0
1 / 1 / 0
Регистрация: 17.01.2020
Сообщений: 33
14.07.2025, 11:10  [ТС]
Цитата Сообщение от Igor3D Посмотреть сообщение
еще лучше + позицию и причину (что не нравится).
Нет пределов совершенству. Главное вовремя остановиться.
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,066
Записей в блоге: 2
14.07.2025, 15:20
Цитата Сообщение от e_c_c Посмотреть сообщение
Нет пределов совершенству. Главное вовремя остановиться.
А не задевает что задачка - ну уж совсем сопливая, тот .csv файл известен полвека. А выходит как-то длинно и мутно, нет простоты, ясности, элегантности (не побоюсь этого слова). Да, написанное работает, это главное, и этого никто не отменял. Но вот гордиться нечем (а хотелось бы )
0
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
14.07.2025, 15:59
Цитата Сообщение от Igor3D Посмотреть сообщение
А не задевает, что тот .csv файл известен полвека

я тож не знаю; что за csv-файл, чем знаменит ? как Пизанская башня ?
короче, задело не по-детски.
0
14.07.2025, 16:33

Не по теме:

Цитата Сообщение от volodin661 Посмотреть сообщение
я тож не знаю; что за csv-файл
csv = Comma Seperated Values (числа разделенные запятыми), аббревиатура используется во многих приложениях

0
14.07.2025, 17:31

Не по теме:

Цитата Сообщение от Igor3D Посмотреть сообщение
числа
:)
___

0
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
14.07.2025, 22:14
ну, не числа, а в общем виде значения, разделенные запятыми. это я в состоянии понять, хотя и туповат от природы.

но дальше с твоей стороны были претензии к размеру, запутанности и неочевидности кода :
Цитата Сообщение от Igor3D Посмотреть сообщение
А выходит как-то длинно и мутно, нет простоты, ясности, элегантности
приняв последние во внимание, можно догадаться, что у Ц++ есть какие-то готовые классы или готовые конструкции для чтения полувековых csv-файлов; используя их, можно существенно уменьшить размер кода и сделать его понятным, но малята о них не знают и показывают друг другу свои наивные костыльки.

Igor3D, не томи, показывай уже этот свой вариант !
0
 Аватар для Nishen
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,827
15.07.2025, 06:37
Цитата Сообщение от e_c_c Посмотреть сообщение
Изначально это 0xААBBCC после отбрасывания 0х , я просто раскладываю на пары байт.
И для чего тебе тогда работать со строками, какие-то 0x искать, erase вызывать, если сразу можно читать их как числа и раскладывать по два байта?
1
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
17.07.2025, 12:37
Цитата Сообщение от Nishen Посмотреть сообщение
И для чего тебе тогда работать со строками, какие-то 0x искать, erase вызывать, если сразу можно
обратиться к Aлександру Iвановичу Жопэтэ, который сразу выдаёт отличный вариант:

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
50
51
52
53
#include <iostream>
#include <fstream>
#include <vector>
#include <cstdint>
 
struct Color {
    uint8_t r, g, b;
};
 
Color int_to_rgb(uint32_t color_int) {
    Color color;
    color.r = (color_int >> 16) & 0xFF;
    color.g = (color_int >> 8) & 0xFF;
    color.b = color_int & 0xFF;
    return color;
}
 
int main() {
 
    std::ifstream inputFile("primer.txt");
    std::string segment;
    std::vector<int> hex_values; // Or std::vector<unsigned int>
 
    std::getline(inputFile, segment);   // skip first line
    while(std::getline(inputFile, segment, ',')) {
        // Remove "0x" prefix if present
        if (segment.substr(0, 2) == "0x") {
            segment = segment.substr(2);
        }
        try {
            // Convert hexadecimal string to integer (base 16)
            int value = std::stoi(segment, nullptr, 16);
            hex_values.push_back(value);
        } catch (const std::invalid_argument& e) {
            std::cerr << "Invalid hexadecimal string: " << segment << std::endl;
        } catch (const std::out_of_range& e) {
            std::cerr << "Hexadecimal value out of range: " << segment << std::endl;
        }
    }
 
    // Print the converted values
    std::cout << "Convert packed RRGGBB-integer to separate R,G,B values: ";
    for (int val : hex_values) {
        Color color = int_to_rgb(val);
 
        std::cout << "Red: " << static_cast<int>(color.r) << ", ";
        std::cout << "Green: " << static_cast<int>(color.g) << ", ";
        std::cout << "Blue: " << static_cast<int>(color.b) << std::endl;
    }
    std::cout << std::endl;
 
    return 0;
}
Build:
Bash
1
clang++ -std=c++11 read-hex-strings-and-convert-to-RGB.cpp -o read-hex-strings-and-convert-to-RGB
Execute:
Bash
1
./read-hex-strings-and-convert-to-RGB
Output:
Кликните здесь для просмотра всего текста
Convert packed RRGGBB-integer to separate R,G,B values: Red: 0, Green: 0, Blue: 1
Red: 0, Green: 0, Blue: 2
Red: 0, Green: 0, Blue: 3
Red: 0, Green: 0, Blue: 4
Red: 0, Green: 0, Blue: 5
Red: 0, Green: 0, Blue: 6
Red: 0, Green: 0, Blue: 7
Red: 0, Green: 0, Blue: 8
Red: 0, Green: 0, Blue: 9
Red: 0, Green: 0, Blue: 16
Red: 0, Green: 0, Blue: 17
Red: 0, Green: 0, Blue: 18
Red: 0, Green: 0, Blue: 19
Red: 0, Green: 0, Blue: 20
Red: 0, Green: 0, Blue: 21
Red: 0, Green: 0, Blue: 22
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 255, Green: 255, Blue: 255
Red: 255, Green: 255, Blue: 255
Red: 0, Green: 0, Blue: 0
Red: 255, Green: 255, Blue: 255
Red: 255, Green: 255, Blue: 255
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 0, Green: 0, Blue: 0
Red: 16, Green: 0, Blue: 153


Но есть и норм. человеческие языки:
Execute:
Bash
1
2
3
4
5
perl -e '
<>;
$/ = ",";
printf "R,G,B = %d, %d, %d\n", unpack "C*", pack "H*", /0x([[:xdigit:]]+)/ for <>;
' primer.txt
Output:
Кликните здесь для просмотра всего текста
R,G,B = 0, 0, 1
R,G,B = 0, 0, 2
R,G,B = 0, 0, 3
R,G,B = 0, 0, 4
R,G,B = 0, 0, 5
R,G,B = 0, 0, 6
R,G,B = 0, 0, 7
R,G,B = 0, 0, 8
R,G,B = 0, 0, 9
R,G,B = 0, 0, 16
R,G,B = 0, 0, 17
R,G,B = 0, 0, 18
R,G,B = 0, 0, 19
R,G,B = 0, 0, 20
R,G,B = 0, 0, 21
R,G,B = 0, 0, 22
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 255, 255, 255
R,G,B = 255, 255, 255
R,G,B = 0, 0, 0
R,G,B = 255, 255, 255
R,G,B = 255, 255, 255
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 0, 0, 0
R,G,B = 16, 0, 153
0
 Аватар для Nishen
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,827
18.07.2025, 08:43
Цитата Сообщение от volodin661 Посмотреть сообщение
братиться к Aлександру Iвановичу Жопэтэ, который сразу выдаёт отличный вариант:
И в чем отличность этого варианта? В том, что он предлагает за зря CPU гонять, вырезая сабстринги? В файле все числа лежат с префиксом 0x. ЗАЧЕМ ЭТО ДЕЛАТЬ, если можно сразу в int читать.
0
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
18.07.2025, 12:11
Nishen, а где ты показал этот 'сразувинт'-вариант ? не вижу.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
18.07.2025, 13:51
Цитата Сообщение от volodin661 Посмотреть сообщение
'сразувинт'-вариант
C++
1
std::stoi("0x100009", nullptr, 16)
Добавлено через 15 минут
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
#include <iostream>
#include <string>
#include <cctype>
#include <fstream>
#include <locale>
#include <algorithm>
 
class my_ctype : public std::ctype<char> {
    mask my_table[table_size];
public:
    my_ctype(size_t refs = 0) : std::ctype<char>(my_table, false, refs) {
        std::copy_n(classic_table(), table_size, my_table);
        my_table[static_cast<unsigned char>(',')] |=  space; // Добавляем символ '^' как пробельный
    }
};
 
int main(){
   if(std::ifstream in("input.txt"); in.is_open()){
      //read first line
      {
         std::string str;
         getline(in, str);
         std::cout << str << std::endl;
      }
      
      // set locale with custom facet and set number format read
      in.imbue(std::locale(std::cin.getloc(), new my_ctype()));
      in >> std::hex;
 
      // reads values
      unsigned value;
      while(in >> value)
         std::cout << value << std::endl;
   }else{
      std::cout << "File not opened." << std::endl;
   }
}
https://onlinegdb.com/HQnKHpJE4
Но кто мы такие что бы ставить под сомнение господство нейросеток?
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,066
Записей в блоге: 2
18.07.2025, 14:26
Цитата Сообщение от volodin661 Посмотреть сообщение
обратиться к Aлександру Iвановичу Жопэтэ, который сразу выдаёт отличный вариант:
Что будет при таких данных (пропущена первая запятая)
0x000001 0x000002, 0x000003,
По-моему "отличный вариант" просто сожрет/пропустит 0x000002 втихаря, без всякого сообщения об ошибке. Также не видно где/как отслеживается номер строки в файле
0
 Аватар для volodin661
6817 / 2317 / 352
Регистрация: 10.12.2013
Сообщений: 7,988
18.07.2025, 15:54
Цитата Сообщение от Igor3D Посмотреть сообщение
Что будет при таких данных (пропущена первая запятая)
Послушайте, трёхмерный Igor, как была задача сформулирована ( "comma delimited hex-string"), такое и получено от него решение.

Цитата Сообщение от Igor3D Посмотреть сообщение
По-моему "отличный вариант" просто сожрет/пропустит 0x000002 втихаря, без всякого сообщения об ошибке.
Кто ж мешает проверить, что будет ?

Цитата Сообщение от Igor3D Посмотреть сообщение
Также не видно где/как отслеживается номер строки в файле
э-э.. его надо публично отслеживать ?
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,066
Записей в блоге: 2
18.07.2025, 17:41
Цитата Сообщение от volodin661 Посмотреть сообщение
как была задача сформулирована ( "comma delimited hex-string"), такое и получено от него решение.
Нет, не такое. Пропущенная запятая - не "comma delimited", она должна опознаваться как ошибка.
Цитата Сообщение от volodin661 Посмотреть сообщение
Кто ж мешает проверить, что будет ?
То есть Вы не решение предлагаете, а так, набросок, эскиз, "информацию к размышлению"?
Цитата Сообщение от volodin661 Посмотреть сообщение
э-э.. его надо публично отслеживать ?
Да, иногда надо (молча) делать и то о чем заказчик не говорит. Напр "примечания" - все после символа ";" отсекается. Рано или поздно он созреет, надо только обставить дело так чтобы это выглядело его идеей. И конечно, по меньшей мере сообщить в какой строке ошибка
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
18.07.2025, 18:42
Цитата Сообщение от Igor3D Посмотреть сообщение
Нет, не такое. Пропущенная запятая - не "comma delimited", она должна опознаваться как ошибка.
Кому, где и зачем она должна?

Цитата Сообщение от Igor3D Посмотреть сообщение
То есть Вы не решение предлагаете, а так, набросок, эскиз, "информацию к размышлению"?
Да. Здесь каждый фрагмент кода и совет нужно воспринимать именно так.

Цитата Сообщение от Igor3D Посмотреть сообщение
И конечно, по меньшей мере сообщить в какой строке ошибка
Это и много о чем вы говорите это излишество и не является темой обсуждения.
То есть - оффтоп.
Не нужно выдумывать то чего нет.

Добавлено через 22 минуты
Минимальная обработка ошибок на примере моего кода:
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
50
51
52
#include <iostream>
#include <string>
#include <cctype>
#include <fstream>
#include <locale>
#include <algorithm>
#include <cstdlib>
 
class my_ctype : public std::ctype<char> {
    mask my_table[table_size];
public:
    my_ctype(size_t refs = 0) : std::ctype<char>(my_table, false, refs) {
        std::copy_n(classic_table(), table_size, my_table);
        my_table[static_cast<unsigned char>(',')] |=  space; // Добавляем символ '^' как пробельный
    }
};
 
int main(){
   if(std::ifstream in("input.txt"); in.is_open()){
      //read first line
      {
         std::string str;
         if (std::getline(in, str))
            std::cout << str << std::endl;
         else{
            std::cerr << "Read error first line (file is empty)." << std::endl;
            return EXIT_SUCCESS;
         }
      }
      
      // set locale with custom facet and set number format read
      in.imbue(std::locale(std::cin.getloc(), new my_ctype()));
      in >> std::hex;
      
      // current read position
      std::streampos pos = in.tellg();
      
      // reads values
      unsigned value;
      while(in >> value){
         std::cout << value << std::endl;
         pos = in.tellg();
      }
      // error occured
      if (in.fail() && !in.eof()){
         std::cerr << "Read error starting from position : " << pos << std::endl;
         return EXIT_SUCCESS;
      }
   }else{
      std::cout << "File not opened." << std::endl;
   }
}
Ну и зачем оно тут такое?
Типа гордо сказать: "тяп ляп и в продакшен"?

Вы должны понимать, что любое решение основывается на задаче и только на ней.
Если файл ожидается без ошибок, то и обрабатывать их не нужно.
Просто считать все данные скомпрометированными и не годными для использования.

Если же нужно обрабатывать, то и нужно знать точный формат данных и насколько строго этому формату придерживаться.

И опять наши бараны вылазят, это не задача текущей темы.

Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от Igor3D Посмотреть сообщение
Да, иногда надо (молча) делать и то о чем заказчик не говорит.
Особенно майнеров напихать ;)

0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,066
Записей в блоге: 2
18.07.2025, 18:57
Цитата Сообщение от SmallEvil Посмотреть сообщение
Это и много о чем вы говорите это излишество и не является темой обсуждения.
То есть - оффтоп.
Не нужно выдумывать то чего нет.
Если "исполнитель" начинает брыкаться по ничтожному поводу (типа номер строки, примечания в текстовом файле) и упрямо доказывать что это "не его задача" - ну значит для него тяжело сделать/добавить такие фичи. И это вызывает сомнения в его профессионализме.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
18.07.2025, 19:12
Цитата Сообщение от Igor3D Посмотреть сообщение
Если "исполнитель" начинает брыкаться по ничтожному поводу (типа номер строки, примечания в текстовом файле) и упрямо доказывать что это "не его задача" - ну значит для него тяжело сделать/добавить такие фичи. И это вызывает сомнения в его профессионализме.
Ты попутал место и контекст происходящего.
0
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,305
21.07.2025, 06:33
Цитата Сообщение от Igor3D Посмотреть сообщение
Что будет при таких данных (пропущена первая запятая)
А где в задании указано, что требуется обработка ошибок? Так же может быть точка вместо запятой, буква О вместо нуля, русская "х" вместо латинской - и т.д. и т.п. Программист должен гадать на кофейной гуще, и писать сразу код на все случаи жизни?

Нужно просто уточнить, разделителем чисел является "запятая или символ возврата строки", или тупо ищем "0x" и читаем hex число позади него? Забив на запятые и другие разделители, которые нужны для человека (что бы красивше на экране было нарисовано), а не для компутера?
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.07.2025, 06:33

2-ичное представление числа типа double или float?
помогите разобратся,,,, плиз)) double a=1991.829; a==01000000 10011111 00011111 01010000 11100101...

Есть ли буква в 16-ичной записи целого числа
Спешу.Пишу кусок задания.1)Составить логическую функцию которая для одного целого числа определяет...

Составить программу для перевода данного натурального числа в p-ичную систему счисления
Составить программу для перевода данного натурального числа в p-ичную систему счисления (2 &lt; р &lt;...

дано число в К-ичной системе счисления
an an-1 ...а0 (К&lt;=36). найти остаток от деления его на m. числа К,n,m, как и остаток от деления на...

Получить q ичное представление числа
Даны натуральные числа p и q(q&gt;=2).Получить q-ичное представление числа p в виде такой...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
[golang] Конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
alhaos 10.06.2026
Задача Реализовать конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов. Сигнатура func Fetch(urls string, maxConcurrent int) Result Пример urls :=. . .
[golang] Состояние гонки (race condition)
alhaos 10.06.2026
Состояние гонки (race condition) Состояние гонки (Race Condition) — это ошибка, возникающая при одновременном доступе нескольких горутин к одним и тем же данным без должной синхронизации. При этом. . .
Взрослые отношения, и почему они не получаются
kumehtar 09.06.2026
Когда в детстве ребёнок не получает от родителей чего-то важного, он лишается не просто приятных переживаний, а основы для формирования определённых внутренних качеств и навыков. Если ребёнок не. . .
[golang] Worker Pool
alhaos 09.06.2026
Worker Pool Worker Pool — паттерн конкурентной обработки задач в Go. Суть: фиксированное количество горутин-воркеров читают задачи из общего канала и пишут результаты в общий канал результатов. . . .
[golang] Pipeline
alhaos 08.06.2026
Pipeline Pipeline — паттерн конкурентной обработки данных в Go. Суть: данные проходят через цепочку независимых стадий, каждая из которых работает в своей горутине и общается с соседями через. . .
Свет внутри себя
kumehtar 07.06.2026
Пусть это будет здесь lIs4oanZS9Y
Программа для com-порта
Uhbif79 05.06.2026
Всем привет, давно хотел изучить Qt, начинал, бросал, потом снова начинал. И сейчас вот смог написать свою первую программу. До этого имел опыт программирования микроконтроллеров, писал прошивки на. . .
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru