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

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

Войти
Регистрация
Восстановить пароль
 
AlexMEll
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 16
22.01.2014, 19:06     Пишет в файл калябаляку #1
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 остается числом, как записать в читабельном виде котаны?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
5679 / 3158 / 357
Регистрация: 29.11.2010
Сообщений: 8,458
22.01.2014, 19:15     Пишет в файл калябаляку #2
C++
1
2
3
4
5
6
7
int main()
{
    SetLocaleOutputCP(1251);
    SetLocaleCP(1251);
    setlocale(LC_ALL, "rus");
    ...
}
ValeryS
Модератор
6413 / 4879 / 448
Регистрация: 14.02.2011
Сообщений: 16,180
22.01.2014, 19:17     Пишет в файл калябаляку #3
Цитата Сообщение от AlexMEll Посмотреть сообщение
char str[2]={i,'\n'};
а это что?
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
ValeryS
Модератор
6413 / 4879 / 448
Регистрация: 14.02.2011
Сообщений: 16,180
22.01.2014, 19:44     Пишет в файл калябаляку #5
Цитата Сообщение от AlexMEll Посмотреть сообщение
Добавление к числу символ перехода строки, чтобы каждое новое число начиналось с новой строки в файле
а разве к числу можно прибавить символ
AlexMEll
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 16
22.01.2014, 19:46  [ТС]     Пишет в файл калябаляку #6
Цитата Сообщение от ValeryS Посмотреть сообщение
а разве к числу можно прибавить символ
В php можно было В принципе число записывается в строку вместе с этим символом. Значит это уже строка
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 19:59     Пишет в файл калябаляку
Еще ссылки по теме:

C++ файлы с++ квадраты считает а в файл не пишет
Почему не пишет файл? C++
C++ Fstream пишет 13 вместо 10
C++ Fwprintf не пишет данные wchar_t в файл
Dev-C++ при отладке пишет "файл не скомпилирован" C++

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

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6413 / 4879 / 448
Регистрация: 14.02.2011
Сообщений: 16,180
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);// записать в буфер число переведенное в символьный вид и перевод строки, подготовить строку
Yandex
Объявления
22.01.2014, 19:59     Пишет в файл калябаляку
Ответ Создать тему
Опции темы

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