Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
chelius
0 / 0 / 0
Регистрация: 29.08.2016
1

Подскажите пожалуйста

25.11.2009, 03:40. Просмотров 1824. Ответов 25
Метки нет (Все метки)

Нужно ввести в 1 строковую переменную или символьный массив текст из файла с абзацами.Как это реализовать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2009, 03:40
Ответы с готовыми решениями:

Подскажите пожалуйста
Здравствуйте, подскажите в чем ошибки. Нужно сделать мини игрушку-21-очко. при...

Подскажите пожалуйста
Здравствуйте, я нашел длину каждого слова в строке, а как теперь вывести...

Подскажите пожалуйста
У меня проблема такая, когда пробую создать консольное приложение(с++) в visual...

Подскажите, пожалуйста.
Существует - ли способ давать переменным типа char русские буквы так, чтобы они...

Подскажите пожалуйста
Как в блок-схеме описываются эти две строчки? for...

25
so1o
33 / 33 / 5
Регистрация: 16.11.2009
Сообщений: 206
25.11.2009, 04:17 2
предположу что нужно ввести класс
0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
25.11.2009, 10:27 3
Здравствуйте я начал изучать программирование на С++ мне он необходим для изучении 3d графических программ таких как 3ds max,Maya дело в то что на С++ писались эти программы,и дополнения можно писать к ним тоже на этом языке,но чтобы их писать нужно знать каким програмным кодом они были написанны или алгоритм этих программ (поправьте меня если я в чём то ошибаюсь)

Вопрос состоит в том что,как мне открыть и узнать как писались эти программы,какие файлы нужно открывать???

В дополнении хочу спросить что слышал я о программах Декомпиляторах,не их ли используют чтобы посмотреть dll файлы в которых этот код и написан?
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
25.11.2009, 17:45 4
Работает, но есть странность...
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
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    FILE *fp;
    size_t flen, freaden;
    char *fname = "text.txt";
    char *content;
    
    if ( (fp = fopen(fname, "r")) == NULL ){
        printf("Can't open file %s\n", fname);
        exit(1);
    }
    
    fseek(fp, 0, SEEK_END);
    flen = ftell(fp);
    rewind(fp);
    
    printf("Length of file is %d bytes\n", flen);
    
    if ( (content = (char*)malloc(flen + 1)) == NULL ){
        perror("Not enough memory\n");
        exit(1);
    }
    /*
    if ( fread(content, 1, flen, fp) != flen ){
        perror("Can't read from file\n");
        exit(1);
    }
    */
    freaden = fread(content, 1, flen, fp);
    fclose(fp);
    
    printf("Readen from file %d bytes\n", freaden);
    
    content[flen] = 0;
    printf("Content of %s is:\n\n%s\n", fname, content);
    
    free(content);
    content = NULL;
    
    exit(0);
}
Файл текстовый - кусок текста с адобовского сайта.
Смущает вот, что:
Код
Length of file is 921 bytes
Readen from file 917 bytes
Текстовый редактор тоже говорит, что в файле 921 байт. При этом вроде всё напечаталось, никаких пустых абзацев и прочей "неучтёнки"... Так волей-неволей в скрытый текст поверишь
Подскажите пожалуйста
1
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
25.11.2009, 18:07 5
А вот в MacOS X 10.4.11 и FreeBSD 6.2 всё правильно показывается...
1
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
25.11.2009, 18:34 6
Вы извените но я пока несовсем понимаю что вы мне написали я веть недавно начал месяц где то,что можно за месяц изучить!
Если можно напишите попроще)?
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
25.11.2009, 18:51 7
kdmfilm, я вообще-то задание делал... Вот это:
Цитата Сообщение от Chelius Посмотреть сообщение
Нужно ввести в 1 строковую переменную или символьный массив текст из файла с абзацами.
А информацию о том, как писать плагины для той или иной программы, лучше всего искать на сайте производителя в разделе "для разработчиков"... Правда, чтобы их (плагины) писать, нужно всё-таки знать язык, при чём неплохо...
1
chelius
0 / 0 / 0
Регистрация: 29.08.2016
25.11.2009, 19:33 8
Цитата Сообщение от easybudda Посмотреть сообщение
kdmfilm, я вообще-то задание делал... Вот это:

А информацию о том, как писать плагины для той или иной программы, лучше всего искать на сайте производителя в разделе "для разработчиков"... Правда, чтобы их (плагины) писать, нужно всё-таки знать язык, при чём неплохо...
Спасиба! но похоже я не верно сформулировал. мне нужно работать со всем файлом и я предполагал что его текст можно будет полностью (с абзацами) ввести в символьный массив или строковую переменную. так как тревиального решения никто не предложил я ошибался в предположениях

Добавлено через 3 минуты
Цитата Сообщение от easybudda Посмотреть сообщение
Работает, но есть странность...
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
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    FILE *fp;
    size_t flen, freaden;
    char *fname = "text.txt";
    char *content;
    
    if ( (fp = fopen(fname, "r")) == NULL ){
        printf("Can't open file %s\n", fname);
        exit(1);
    }
    
    fseek(fp, 0, SEEK_END);
    flen = ftell(fp);
    rewind(fp);
    
    printf("Length of file is %d bytes\n", flen);
    
    if ( (content = (char*)malloc(flen + 1)) == NULL ){
        perror("Not enough memory\n");
        exit(1);
    }
    /*
    if ( fread(content, 1, flen, fp) != flen ){
        perror("Can't read from file\n");
        exit(1);
    }
    */
    freaden = fread(content, 1, flen, fp);
    fclose(fp);
    
    printf("Readen from file %d bytes\n", freaden);
    
    content[flen] = 0;
    printf("Content of %s is:\n\n%s\n", fname, content);
    
    free(content);
    content = NULL;
    
    exit(0);
}
Файл текстовый - кусок текста с адобовского сайта.
Смущает вот, что:
Код
Length of file is 921 bytes
Readen from file 917 bytes
Текстовый редактор тоже говорит, что в файле 921 байт. При этом вроде всё напечаталось, никаких пустых абзацев и прочей "неучтёнки"... Так волей-неволей в скрытый текст поверишь
Вложение 14496


Спасиба! но похоже я не верно сформулировал. мне нужно работать со всем файлом и я предполагал что его текст можно будет полностью (с абзацами) ввести в символьный массив или строковую переменную. так как тревиального решения никто не предложил я ошибался в предположениях

Добавлено через 41 секунду
Цитата Сообщение от so1o Посмотреть сообщение
предположу что нужно ввести класс
Спасиба! а по конкретнее можно?

Добавлено через 1 минуту
Цитата Сообщение от kdmfilm Посмотреть сообщение
Здравствуйте я начал изучать программирование на С++ мне он необходим для изучении 3d графических программ таких как 3ds max,Maya дело в то что на С++ писались эти программы,и дополнения можно писать к ним тоже на этом языке,но чтобы их писать нужно знать каким програмным кодом они были написанны или алгоритм этих программ (поправьте меня если я в чём то ошибаюсь)

Вопрос состоит в том что,как мне открыть и узнать как писались эти программы,какие файлы нужно открывать???

В дополнении хочу спросить что слышал я о программах Декомпиляторах,не их ли используют чтобы посмотреть dll файлы в которых этот код и написан?
Извини йа сам такой не умный)

Добавлено через 5 минут
Цитата Сообщение от kdmfilm Посмотреть сообщение
Вы извените но я пока несовсем понимаю что вы мне написали я веть недавно начал месяц где то,что можно за месяц изучить!
Если можно напишите попроще)?
нужно скопировать текст из файла с абзацами в массив. сталкивались?
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
25.11.2009, 19:52 9
Chelius, так у меня ж в програмке весь текстовый файл в переменную content считывается. Хотите - как с символьным массивом, с ним работайте, хотите - как с текстовой переменной... Что именно не так-то?
0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
25.11.2009, 21:55 10
Цитата Сообщение от easybudda Посмотреть сообщение
производителя в разделе "для разработчиков"...
Да вы знаете я был бы и рад посмотреть этот раздел но врядли он существует,производит эти программы фирма Autodesk у которая первая програ и была 3ds max с помощью неё они выкупели бесценную программу Maya и Softimage XSI в которых делали визуальные и специальные эффекты к фильмам и делают до сих пор,ну это кратко о прогах но вот только код они врядли будут свой показывать потому как у этой фирмы уже есть поставщик плагинов Cebak они производят их для Max,в другом случае если только код программы регестрируют и потентуют чтобы его никто несмог спереть,веть я думаю опытный программист знает что ума на э то особого ненадо готовый код и немного подделать её чтобы отличалась видом и некоторыми функциями!
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
25.11.2009, 23:44 11
Цитата Сообщение от kdmfilm Посмотреть сообщение
Да вы знаете я был бы и рад посмотреть этот раздел но врядли он существует,производит эти программы фирма Autodesk
Ну так смотрите. На всякий случай: там по-английски. Перевести не нужно?
0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
25.11.2009, 23:57 12
Спасибо за информацию)!!!
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
26.11.2009, 00:13 13
Меня вот больше ситуация с fread интересует... Только-что тот же свой код в debian linux проверил - и тоже всё правильно. Сколько байт в файле было, столько fread и вернула... Почему в винде-то меньше показывает?
0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
26.11.2009, 10:24 14
А теперь я бы хотел задать бывалым программистам возможно некультурный вопрос для них,обязательно нужно знать "математику" я имею виду Линейная алгебра,Дискретная математика,Математический онализ,что касаеться школьной математике,это само собой нужно знать,а вот на счёт высшей я несовсем понял,конечно я с ней знаком и знаю что в программировании используються много чего из высшей математике например знаменитые булевы вычисления или массивы.Вопрос заключается в том что высшая математика нужна чтобы лучше понимать программирование,или можно пораскинуть мозгами и понять например С++ так,логически рассудительно???
Ну а если честно признаться то мне нужен не только С++ яго язык конкретно но ещё знать надо полюбому,программирование в Microsoft Visual С++(так как на нём создаваласись 3ds max,Maya), С++ Open GL и С++ Direct X для создание 3d или 2d отображения,анимация и т.д и т.п
Что вы мне можите сказать по этому поводу надо ли знать всю высш.мат,хотя откровенно говоря мне нехотелось бы её дотошно изучать?
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
26.11.2009, 12:37 15
Цитата Сообщение от easybudda Посмотреть сообщение
Меня вот больше ситуация с fread интересует... Только-что тот же свой код в debian linux проверил - и тоже всё правильно. Сколько байт в файле было, столько fread и вернула... Почему в винде-то меньше показывает?
"Я думал-думал, я всё понял!"(с)
Это заморочка с CR/LF в текстовых файлах. Файл вот так
C
1
if ( (fp = fopen(fname, "rb")) == NULL ){
открывать надо, и всё правильно будет.
Вот с одной стороны - моя, конечно, ошибка, глупо спорить... А с другой - грёбаный виндовс!
0
timuragmk
2 / 2 / 1
Регистрация: 19.11.2009
Сообщений: 6
26.11.2009, 13:02 16
Цитата Сообщение от easybudda Посмотреть сообщение
Это заморочка с CR/LF в текстовых файлах.
2 easybudda: cовершенно верно.
вот, что пишут в MSDN:
"If the given stream is opened in text mode, carriage return–linefeed pairs are replaced with single linefeed characters."
Т.е. CR/LF воспиринимается как 1 байт.
0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
26.11.2009, 16:01 17
Ну ктонить можит обьяснить на мой предыдущий вопрос,легко и просто,в какой степени нужна математика для программирования Microsoft Visual С++,С++ Open GL и С++ Direct X?
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
26.11.2009, 16:23 18
Цитата Сообщение от kdmfilm Посмотреть сообщение
Ну ктонить можит обьяснить на мой предыдущий вопрос,легко и просто,в какой степени нужна математика для программирования Microsoft Visual С++,С++ Open GL и С++ Direct X?

Не по теме:

"Зачем же я, братцы, стереометрию-то учил?!"(с) А.П. Чехов :D

0
kdmfilm
0 / 0 / 0
Регистрация: 25.11.2009
Сообщений: 12
26.11.2009, 17:01 19
Ну вообщето если без издевательств на мой вопрос,я несказал что вообще математику ненадо учить,я сказал что впределах школьной программы это минимум знаний для программирования,а стереометрия это таже геометрия только по обширней.Я вас прошу пожалуйста ответить на мой вопрос серьёзно и вы были когда то начинающими!!!
0
easybudda
Модератор
Эксперт CЭксперт С++
10147 / 6054 / 1521
Регистрация: 25.07.2009
Сообщений: 11,476
26.11.2009, 17:19 20
kdmfilm, а серьёзно - для того, чтобы собственно язык программирования выучить, школьной программы математики за глаза хватит. А чтобы потом на этом языке какие-то сложные геометрические фигуры описывать, без хорошего знания геометрии наверное туго прийдётся...
0
26.11.2009, 17:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2009, 17:19

Подскажите пожалуйста
Добрый день товарищи программисты. Столкнулся с задачей и никак не могу...

Подскажите, пожалуйста
Вот начал я изучать С++ и сразу же встретился с проблемой. Написал код простой....

подскажите пожалуйста
вот код программы... ________________ #include &lt;iostream.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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