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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AlexMEll
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 16
#1

Пишет в файл калябаляку - C++

22.01.2014, 19:06. Просмотров 301. Ответов 6
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
void pars(int *start, int *end) {
     FILE *f;
     f = fopen("file.txt", "w");
        for (int i=*start;i<=*end;i++) {
        char str[2]={i,'\n'};
        fputs(str,f);
        std::cout << str;
        }
     fclose(f);
     }
Есть функция, при записе в файл переменной str пишет калямаляку, переменная i остается числом, как записать в читабельном виде котаны?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2014, 19:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пишет в файл калябаляку (C++):

Почему не пишет файл? - C++
int main (int Count , char **Parametrs) { std::ofstream s; s.open(&quot;C:\Projects\test\s.log&quot;); s&lt;&lt;&quot;tfds&quot;; ...

WriteFileEx - не пишет в файл. - C++
Нужен асинхронный ввод/вывод. Простой пример: char* b=&quot;abccccccccccccccccccccccccccccccccccc&quot;; HANDLE my_file_output=CreateFileA( ...

Криво пишет даные в файл - C++
Надо через структуры записать даные в файл. Компилюю, ввожу даные, записивает, открываю то что записал а там какието &quot;иероглифы&quot;. В чем...

Fwprintf не пишет данные wchar_t в файл - C++
привет Что-то непонятно поведение. Функция run_command_with_response() возвращает непустую строку (ответ от консоли windows), Encode()...

файлы с++ квадраты считает а в файл не пишет - C++
Вычислить сумму квадратов чисел от 1 до 30. Квадраты чисел предварительно записать в файл. нужно квадраты записать в файл и при этом...

кто пишет в borland c 3.1 не можете скинуть файл? - C++
плиз киньте у кого Xp файл C:\WINDOWS\system32\ntvdm.exe мне на мыло vkres@rambler.ru

6
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
22.01.2014, 19:15 #2
C++
1
2
3
4
5
6
7
int main()
{
    SetLocaleOutputCP(1251);
    SetLocaleCP(1251);
    setlocale(LC_ALL, "rus");
    ...
}
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
22.01.2014, 19:17 #3
Цитата Сообщение от AlexMEll Посмотреть сообщение
char str[2]={i,'\n'};
а это что?
0
AlexMEll
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 16
22.01.2014, 19:37  [ТС] #4
Цитата Сообщение от ValeryS Посмотреть сообщение
а это что?
Добавление к числу символ перехода строки, чтобы каждое новое число начиналось с новой строки в файле

Добавлено через 3 минуты
Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
2
3
4
5
6
7
int main()
{
    SetLocaleOutputCP(1251);
    SetLocaleCP(1251);
    setlocale(LC_ALL, "rus");
    ...
}
А зачем? у меня стоит модификация для DevC++, все буквы и так русские.

P.S Примерно такое пишет в файл.
Кликните здесь для просмотра всего текста
de
ef
fg
gh
hi
ij
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
22.01.2014, 19:44 #5
Цитата Сообщение от AlexMEll Посмотреть сообщение
Добавление к числу символ перехода строки, чтобы каждое новое число начиналось с новой строки в файле
а разве к числу можно прибавить символ
0
AlexMEll
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 16
22.01.2014, 19:46  [ТС] #6
Цитата Сообщение от ValeryS Посмотреть сообщение
а разве к числу можно прибавить символ
В php можно было В принципе число записывается в строку вместе с этим символом. Значит это уже строка
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
22.01.2014, 19:59 #7
Цитата Сообщение от AlexMEll Посмотреть сообщение
В php можно было
ну здесь то не php
Цитата Сообщение от AlexMEll Посмотреть сообщение
В принципе число записывается в строку вместе с этим символом. Значит это уже строка
нет
ты пытаешься в массив из двух чаров запихать int который по размеру 4 char запихать и еще 0x0D (перевод строки)
чтобы создать строку тебе нужны следующие действия
C++
1
2
char str[10];// создать буфер для строки
sprintf(str,"%d\n",i);// записать в буфер число переведенное в символьный вид и перевод строки, подготовить строку
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 19:59
Привет! Вот еще темы с ответами:

В файл пишет только первые два символа! - C++
Всем доброго времени суток. Собственно задача:Провести транс-литерацию английского текста русскими символами, т.е. заменить &quot;А&quot;-&gt;&quot;A&quot;,...

НЕ компилируется файл, пишет [Error] iostream.h: No such file or directory - C++
#include &lt;windows.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;math.h&gt; #include &lt;mmsystem.h&gt; #include &lt;conio.h&gt; #include...

Dev-C++ при отладке пишет "файл не скомпилирован" - C++
Добрый день! установила С++. при отладке пишется файл не скомпилирован, но в паппке которой сохранено есть ехе файл и назнание на русском

Не пишет по-русски - C++
Ввожу значения переменных на русском языке, а вместо слов непонятные буквы. Что нужно дописать чтобы понимались русские слова? ...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
22.01.2014, 19:59
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru