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

Создать файл состоящий из нулевых байтов - C++

Восстановить пароль Регистрация
 
VladSharikov
 Аватар для VladSharikov
22 / 22 / 1
Регистрация: 02.12.2010
Сообщений: 824
06.03.2014, 20:44     Создать файл состоящий из нулевых байтов #1
Сабж.

Это как?

Кодировка походу ASCII.

У меня два варианта...

1) По ascii таблице ищем то, где и первый и второй бит NULL
То есть символ NUL

2) В аски таблице смотрим и ищем арабский ноль. значит бит получается 05.

Верно же первое правда?

А то гугл мне выдает про Null-byte injection
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2014, 20:44     Создать файл состоящий из нулевых байтов
Посмотрите здесь:

C++ Создать вектор, состоящий из элементов главной диагонали
C++ Создать файл состоящий из n целых чисел (прокомментировать код)
составить программу,которая создает файл, состоящий из 10 значений типа int. прочитать файл и вычислить сумму его элементов C++
C++ Открыть бинарный файл(.ехе) и сохранить часть байтов в текст
C++ Запись в файл, состоящий из нескольких строк
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
 Аватар для Catstail
21501 / 10254 / 1670
Регистрация: 12.02.2012
Сообщений: 17,139
06.03.2014, 21:46     Создать файл состоящий из нулевых байтов #2
Открываешь файл как двоичный на запись. Создаешь массив нужного размера и заполняешь нулями. Выводишь массив в файл. Файл закрываешь.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
06.03.2014, 22:01     Создать файл состоящий из нулевых байтов #3
Цитата Сообщение от VladSharikov Посмотреть сообщение
Кодировка походу ASCII.
в си 0 означает конец строки
так что о кодировке забудь
Цитата Сообщение от Catstail Посмотреть сообщение
Открываешь файл как двоичный на запись.
и далее
Цитата Сообщение от Catstail Посмотреть сообщение
Создаешь массив нужного размера и заполняешь нулями.
если не хочешь массив то в цикле записывай в файл 0
например записать миллион 0
C++
1
2
3
4
5
6
7
8
9
10
11
12
unsigned char bt=0;
 
 FILE *fp;
 
  if((fp=fopen("test", "wb"))==NULL) {
    printf("Не удается открыть файл.\n");
    exit(1);
  }
for(int i=0;i<1000000;i++)
  fwrite(&bt,1,1,fp);
 
fclose(fp);
Добавлено через 2 минуты
Цитата Сообщение от VladSharikov Посмотреть сообщение
2) В аски таблице смотрим и ищем арабский ноль. значит бит получается 05.
переведи

код '0' это в шеснадцетеричной 0x30 в десятичной 48
какой бит 05????
VladSharikov
 Аватар для VladSharikov
22 / 22 / 1
Регистрация: 02.12.2010
Сообщений: 824
06.03.2014, 22:19  [ТС]     Создать файл состоящий из нулевых байтов #4
Да я если честно не в приложении к си плюс плюс имел в виду. Просто раздел не нашел какой нужно) я про аски кодировку все таки) в ней нулевой бит какой? 0x0?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
06.03.2014, 22:23     Создать файл состоящий из нулевых байтов #5
Цитата Сообщение от VladSharikov Посмотреть сообщение
Да я если честно не в приложении к си плюс плюс имел в виду.
в данном решении это без разницы
Цитата Сообщение от VladSharikov Посмотреть сообщение
я про аски кодировку все таки)
ну почитай хотя бы вот здесь
http://ru.wikipedia.org/wiki/ASCII
Цитата Сообщение от VladSharikov Посмотреть сообщение
в ней нулевой бит какой? 0x0?
Бит чего?
бит это единица информации, с байтом не путаешь?
VladSharikov
 Аватар для VladSharikov
22 / 22 / 1
Регистрация: 02.12.2010
Сообщений: 824
06.03.2014, 22:29  [ТС]     Создать файл состоящий из нулевых байтов #6
Цитата Сообщение от ValeryS Посмотреть сообщение
Бит чего?
бит это единица информации, с байтом не путаешь?
байт байт байт. вру

Мне вообще каким-либо образом (пусть си++ ) нужно заполнить файл нулевыми байтами)))
Это получается 0x0, так ведь? Это не значит арабский символ "0", что по аски кодировке 0x5?? в этом сомнения мои заключаются)))

вот до чего они доводят)) на форум пишу) даже стыдно) но сомневаюсь и нужно уточнить) Я прав, что это нулевой байт — это байт 0x0, то есть символ NUL, правильно?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
06.03.2014, 22:37     Создать файл состоящий из нулевых байтов #7
Цитата Сообщение от VladSharikov Посмотреть сообщение
Это не значит арабский символ "0", что по аски кодировке 0x5??
да где ты это нашел?
посмотри еще раз таблицу
0х05 это
ENQ, 05 — Enquire. Прошу подтверждения.
использовалось в телетайпах, сейчас устарело
код '0'(символ 0) 0х30
Цитата Сообщение от VladSharikov Посмотреть сообщение
Я прав, что это нулевой байт — это байт 0x0, то есть символ NUL, правильно?
и да и нет
NUL, 00 — Null, пустой. Всегда игнорировался. На перфолентах 1 представлялась отверстием, 0 — отсутствием отверстия. Поэтому пустые части перфоленты до начала и после конца сообщения состояли из таких символов. Сейчас используется во многих языках программирования как конец строки. (Строка понимается как последовательность символов.) В некоторых операционных системах NUL — последний символ любого текстового файла.
компьютер понимает только числа( причем двоичные)
а как их интерпретировать числа, адреса, буквы, яркость пиксела это уже задача программиста и программы

так вот Си, а равно и в плюсах, 0 это означает конец строки
так что открыть файл в текстовом режиме и записать туда 0 не получится
поэтому нужно открывать файл в двоичном режиме
а как я уже показал
VladSharikov
 Аватар для VladSharikov
22 / 22 / 1
Регистрация: 02.12.2010
Сообщений: 824
06.03.2014, 22:52  [ТС]     Создать файл состоящий из нулевых байтов #8
Цитата Сообщение от ValeryS Посмотреть сообщение
и да и нет
я видно совсем тупой!

Цитата Сообщение от ValeryS Посмотреть сообщение
так вот Си, а равно и в плюсах, 0 это означает конец строки
так что открыть файл в текстовом режиме и записать туда 0 не получится
поэтому нужно открывать файл в двоичном режиме
даже DevCPP с полки отрыл, запустил код. В итоге получился набор символов NUL.

Название: nul-example.png
Просмотров: 74

Размер: 980 байт

Такое содержимое подходит под "заполнить файл нулевыми байтами", так ведь?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2014, 23:07     Создать файл состоящий из нулевых байтов
Еще ссылки по теме:

Создать текстовый файл, состоящий из десятичных чисел без знака C++
C++ Создать массив состоящий из различных элементов исходного массива
Создать массив M, содержащий номера нулевых элементов массива D C++

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

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
06.03.2014, 23:07     Создать файл состоящий из нулевых байтов #9
Цитата Сообщение от VladSharikov Посмотреть сообщение
даже DevCPP с полки отрыл, запустил код.
какой код?
Yandex
Объявления
06.03.2014, 23:07     Создать файл состоящий из нулевых байтов
Ответ Создать тему
Опции темы

Текущее время: 04:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru