Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
1 / 1 / 0
Регистрация: 04.06.2019
Сообщений: 39

Работа с библиотекой Srting

29.10.2019, 22:39. Показов 4289. Ответов 29

Студворк — интернет-сервис помощи студентам
Здравствуйте! Вообщем, я работал со строками, которые обьявлял просто, через чар, сел на библиотеку String и перестало работать множество функций для работы с файлами. Помогите пожалуйста
П.С. подчеркивает 10 строку букву а
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <iostream>
#include <string>
using namespace std;
void main()
{
    string a;
    FILE* f = fopen("f.txt","r");
    fgets(a,255, f);
    fclose(f);
    system("pause");
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.10.2019, 22:39
Ответы с готовыми решениями:

Поля to Srting
Добрый день! есть к примеру такой класс class City { String City_name; String Country;

Нужна летиратура, в которой бы описывались работа с событиями, работа с элементами управления
Помогите пожалуйста найти летиратуру, в которой бы описывались работа с событиями,работа со всеми элементами управления(toolbox).И если...

Работа - проведение обучающих семинаров по C#. Работа по выходным дням ( сб-вс - 32 часа). От 30 000р.
Обязанности - проведение обучающих семинаров по C# Базовый (начальный уровень). Опыт преподавания не обязателен, главное чтобы вы не...

29
1 / 1 / 0
Регистрация: 04.06.2019
Сообщений: 39
30.10.2019, 15:30  [ТС]
Студворк — интернет-сервис помощи студентам
то я затупил, не ту библиотеку подключил, проблема другая при выводе идет все до пробела (так как сиаут) а при выводе при помощи принтф выводит иероглифы
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.10.2019, 15:34
Лучший ответ Сообщение было отмечено chueveve как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
#include <fstream>
int main()
{
    std::string a;
    std::ifstream in("f.txt");
    std::getline(in, a);
    std::cout << a << std::endl;
    system("pause");
 
}
Добавлено через 2 минуты
Если нужно считать весь файл, то
C++
1
2
3
4
5
6
7
8
9
10
#include <fstream>
int main()
{
    std::string a;
    std::ifstream in("f.txt");
    a = (std::stringstream() << in.rdbuf()).str();
    std::cout << a << std::endl;
    system("pause");
 
}
1
фрилансер
 Аватар для Алексей1153
6510 / 5770 / 1135
Регистрация: 11.10.2019
Сообщений: 15,412
30.10.2019, 15:34
Цитата Сообщение от oleg-m1973 Посмотреть сообщение
На этом основаны многие демонстрации того, что Си быстрее, чем С++
так это не демонстрации, а шарлатАнства, значит - ловить выгоду на отсутствии инициализации. На этом производительности не добиться, зато багов отхватить - запросто. И вообще речь была не об этом. Давай, покажи примеры, когда контейнеры по твоему мнению опасны, если их использовать как обёртку для new/delete. Давай вместе эти твои примеры рассмотрим
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.10.2019, 15:36
Цитата Сообщение от Алексей1153 Посмотреть сообщение
так это не демонстрации, а шарлатАнства, значит - ловить выгоду на отсутствии инициализации. На этом производительности не добиться, зато багов отхватить - запросто
Ну добиваются же, демонстрируют.
Какие ты баги можешь отхватить заполнив буфер нулями, перед тем как заполнить его другими значениями?
0
1 / 1 / 0
Регистрация: 04.06.2019
Сообщений: 39
30.10.2019, 15:40  [ТС]
Огромное спасибо! Просто сейчас в академии учим си и си++, пишем using namespace std, с файлами работаем при помощи <stdio.h> и да, возможно я надоел, вы не знаете что-то по типу fscanf (считать с файла, но через знаки fscanf(f, "%[^:]:%i:%i\n", str,a,b)
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.10.2019, 15:42
Цитата Сообщение от Алексей1153 Посмотреть сообщение
Давай, покажи примеры, когда контейнеры по твоему мнению опасны, если их использовать как обёртку для new/delete. Давай вместе эти твои примеры рассмотрим
Ну давай, рассмотрим один из просёров - когда чувак запросил путь к какой-то общей папке в std::string s(MAX_PATH), потом добавил к пути свою папку, сделал +=, потом попыталься удалить всё дерево по s.c_str().

Добавлено через 2 минуты
Цитата Сообщение от chueveve Посмотреть сообщение
вы не знаете что-то по типу fscanf (считать с файла, но через знаки fscanf(f, "%[^:]:%i:%i\n", str,a,b)
Я этим давно не пользовался.
Туда вроде адреса надо передавать fscanf(f, "%[^:]:%i:%i\n", str, &a, &b)
0
1 / 1 / 0
Регистрация: 04.06.2019
Сообщений: 39
30.10.2019, 15:46  [ТС]
Да надо, я писал код с файлами этим летом, дальше с ними не работал, учу ооп => чуток подзабыл

Добавлено через 1 минуту
ОГРОМНОЕ всем спасибо что помогли
0
фрилансер
 Аватар для Алексей1153
6510 / 5770 / 1135
Регистрация: 11.10.2019
Сообщений: 15,412
30.10.2019, 15:54
Цитата Сообщение от oleg-m1973 Посмотреть сообщение
Ну давай, рассмотрим один из просёров - когда чувак запросил путь к какой-то общей папке в std::string s(MAX_PATH), потом добавил к пути свою папку, сделал +=, потом попыталься удалить всё дерево по s.c_str().
помню. Там как раз в голом массиве без инициализации дело было, путь был короче массива, ноль он не дописал, в итоге в конце - мусор. Пример не подходит

Цитата Сообщение от oleg-m1973 Посмотреть сообщение
Туда вроде адреса надо передавать fscanf(f, "%[^:]:%i:%i\n", str, &a, &b)
конечно надо адреса
fscanf(f, "%[^:]:%i:%i\n", str.c_str(), &a, &b)
или
fscanf(f, "%[^:]:%i:%i\n", &str[0], &a, &b)
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
30.10.2019, 16:00
Цитата Сообщение от Алексей1153 Посмотреть сообщение
помню. Там как раз в голом массиве без инициализации дело было, путь был короче массива, ноль он не дописал, в итоге в конце - мусор. Пример не подходит
Причём тут твой глолый массив и недописанный ноль?
Здесь начала удаляться родительская папка, благо вовремя заметили.
0
фрилансер
 Аватар для Алексей1153
6510 / 5770 / 1135
Регистрация: 11.10.2019
Сообщений: 15,412
30.10.2019, 16:14
oleg-m1973, значит, это про другой топик. Но при чём тут контейнер тогда. Просто невнимательность

В общем, аргументов так и нету. Спор ради спора?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.10.2019, 16:14

Работа формы в фоне, вне фокуса (работа с раскладкой клавиатуры)
Как заставить это работать в фоне? Даный код работает пока форма в фокусе, как только ее отпускаем - она не реагирует. Public...

Количество подведенного и отведенного тепла, работа сжатия, работа расширения
Определить количество подведенного и отведенного тепла, работу сжатия, работу расширения, полезную работу и КПД цикла предыдущей...

Работа с Меню. Сохранение, печать, создать новый. Работа с рисованием
В общем сабж. Делается программа, которая должная Сохранять, печатать и очищать поле (создать новый/очистка). Также хочу спросить как...

Работа с файловой системой (системное название некоторых папок и работа со скрытыми документами)
Всем привет, подскажите каким образом можно из VBA сохранить документ txt в папке &quot;Общие документы&quot; и задать для него свойство...

Нужна книга, где рассматриваются работа с прерываниями, указатели, работа с памятью, ассемблерные вставки
Привет всем! Подскажите, пожалуйста, хорошую книгу по C (именно C, не C++). Интересует работа с прерываниями, указатели, работа с памятью,...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
После закрытия оутлука продолжает висеть процесс в диспетчере задач
Maks 27.10.2026
С недавнего времени в продакшене возникла проблема: при закрытии оутлука в диспетчере задач продолжал висеть процесс outlook. exe. Проблема возникла после установки MS Office 2021 LTSC на машинах, под. . .
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него. https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952 Инструкция внутри. https:/ / youtu. be/ VpfFZSUDGnQ. . .
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru