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

Преобразовать входной файл, заменив в нем шестнадцатеричные числа на десятичные и наоборот. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нахождение НОД http://www.cyberforum.ru/cpp-beginners/thread366477.html
Здравствуйте, мне надо найти НОД чисел. Как это реализовать на языке C++ ?
C++ Получения информации из sdtout Здравствуйте, мне нужно, что бы программа могла получать в стринговую переменную информацию из stdout. Например, после команды system("ls"); в stdout будет выведена информация о содержимом папки и эту информацию мне нужно сохранить в переменную. Как это сделать? http://www.cyberforum.ru/cpp-beginners/thread366455.html
Генерация случайных чисел C++
#include <stdio.h> #include <conio.h> #include <clocale> #include <time.h> #include <stdlib.h> using namespace std; int main () { int x; setlocale(LC_CTYPE,"Russian");
C++ Задание по ОПП
написать программу на С+++ которая содержит функцию DoSomething(int x; int y; int *res) функция выполняет любые действия над аргументами х та у а результат записывает в *res но для аргументов выполняються условия x>0 y<=0 res!=null если условия выполняються функция генерирует исключение, которое должно содержать информацию об ошибке обробляться и выводить на экран сообщение с ошибкою
C++ Программа определяющая результат гадания "на ромашке" http://www.cyberforum.ru/cpp-beginners/thread366442.html
Это на С++ Составить программу, определяющую результат гадания на ромашке — «любит — не любит», взяв за исходное данное количество лепестков n. Составьте программу, заменяющую большее из двух данных чисел модулем суммы, а меньшее – модулем полуразности этих чисел.
C++ что такое HANDLE? для написания проги пользовалась следующими кодами, которые нашла в инете: HANDLE hConsole, hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); void SetColor(int text, int background) { HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(hStdOut, (WORD)((background << 4) | text)); } подробнее

Показать сообщение отдельно
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
15.10.2011, 04:40     Преобразовать входной файл, заменив в нем шестнадцатеричные числа на десятичные и наоборот.
flip4ik, а каков входной формат файла должен быть, я сделал так формат файла, пример:
16-ый hex
FF AB 20 FFFF FFABC EEF9
F7 3F AB EF CC

10-ый dec
255 64 56 78 233 3000
55 66 4 5 777

Разделитель служит пробел ' ' или новая строка '\n'
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
54
55
56
57
58
#include <stdio.h>
 
typedef enum {
   HEX_TO_DEC = 0x1, DEC_TO_HEX = 0x2
} io_convert;
 
int  file_conv(const char* filename, io_convert type) {
   FILE*  fp, *tmp;
   char   ch   = '\0';
   long   num  = 0L;
   long   size = 0L;
   char*  buf  = NULL;
 
   if((fp = fopen(filename, "r+")) == NULL)
         return 0;
   tmp = tmpfile();
   fseek(fp, 0L, SEEK_END);
   fputc('\n', fp);
   rewind(fp);
   if(type & HEX_TO_DEC) {
          while(fscanf(fp, "%x%c", &num, &ch) == 2) 
                 fprintf(tmp, "%d%c", num, ch);
   } else {
          while(fscanf(fp, "%d%c", &num, &ch) == 2) 
                 fprintf(tmp, "%X%c", num, ch);
   }
   fseek(tmp, 0L, SEEK_END);
   size = ftell(tmp);
   fseek(tmp, 0L, SEEK_SET);
   if((buf = (char*) malloc(size)) == NULL) {
         fclose(fp);
         fclose(tmp);
         return 0;
   }
   num = fread(buf, 1u, size, tmp);
   if(num == size) {
         fp = freopen(filename, "w+", fp);
         fwrite(buf, 1u, size, fp);
         fflush(fp);
   }
   free(buf);
   buf = NULL;
   fclose(tmp);
   fclose(fp);
   return 1;
}
 
int  main(void) {
   // конвертируем из 16-ой в 10-ую
   if(file_conv("D:\\hex.txt", HEX_TO_DEC))
          puts("yes hex to dec convertion.");
 
   // конвертируем из 10-ой в 16-ую
   if(file_conv("D:\\num.txt", DEC_TO_HEX))
          puts("yes dec to hex convertion.");
   getchar();
   return 0;
}
 
Текущее время: 00:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru