Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 3

Программа для считывания содержимого директории (Си -> Си++)

09.05.2013, 18:18. Показов 3436. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <dirent.h>
int main(int argc, char ** argv)
{
DIR * d;
struct dirent * entry;
if (argc != 2)
{
printf("Использование: %s <директория>\n", argv[0]);
return 0;
}
d = opendir(argv[1]);
if (d == NULL)
{
printf("Ошибка чтения директории\n");
return 1;
}
while (entry = readdir(d))
printf("%s inode=%i\n", entry->d_name, entry->d_ino);
closedir(d);
return 0;
}
Программа для считывания содержимого директории.
вот я попытался сделать но выходит огромное количество ошибок
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
#include <iostream>
 
using namespace std;
 
int main(int argc, char * argv[]){
   DIR * d;
struct dirent * entry;
if (argc != 2)
{
 
   cout << "Использование: %s <директория>\n" << argv[0] << endl;
return 0;
}
d = opendir(argv[1]);
if (d == NULL)
{
cout << "Ошибка чтения директории\n" << endl;
return 1;
}
while (entry = readdir(d))
cout << "%s inode=%i\n" << entry->d_name, entry->d_ino << endl;
closedir(d);
return 0;
}
вот ошибки
g++ 1.cpp -o test
1.cpp: В функции «int main(int, char**)»:
1.cpp:6:4: ошибка: нет декларации «DIR» в этой области видимости
1.cpp:6:10: ошибка: нет декларации «d» в этой области видимости
1.cpp:14:20: ошибка: нет декларации «opendir» в этой области видимости
1.cpp:20:25: ошибка: нет декларации «readdir» в этой области видимости
1.cpp:21:33: ошибка: invalid use of incomplete type «struct main(int, char**)::dirent»
1.cpp:7:8: ошибка: forward declaration of «struct main(int, char**)::dirent»
1.cpp:21:48: ошибка: invalid use of incomplete type «struct main(int, char**)::dirent»
1.cpp:7:8: ошибка: forward declaration of «struct main(int, char**)::dirent»
1.cpp:22:11: ошибка: нет декларации «closedir» в этой области видимости
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.05.2013, 18:18
Ответы с готовыми решениями:

Написать программу для считывания содержимого текстового файла
1 написать программу для считывания содержимого текстового файла. 2 Написать программу для сохранения системой даты и времени в текстовый...

Разработать программу для записи и считывания содержимого текстовых файлов с коррекцией их атрибутов
Разработать программу для записи и считывания содержимого текстовых файлов с коррекцией их атрибутов. Помогите пожалуйста. Моих знаний по С...

Разработать программу для записи и считывания содержимого текстовых файлов с коррекцией их атрибутов
Разработать программу для записи и считывания содержимого текстовых файлов с коррекцией их атрибутов. Помогите пожалуйста. Моих знаний по С...

3
...
 Аватар для anmartex
1910 / 1329 / 966
Регистрация: 12.02.2013
Сообщений: 2,172
09.05.2013, 19:02
Ctyd, так а что тут переводить? printf заменить на std::cout? Остальные функции как были так и останутся А ошибки у вас посыпались, потому что вы забыли dirent.h подключить. И к тому же, вы не правильно cout используете.
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
#include <iostream>
#include <dirent.h>
 
using namespace std;
 
int main(int argc, char* argv[])
{
   DIR* d;
   struct dirent* entry;
   if (argc != 2)
   {
 
      cout << "Использование: " << argv[0] << " <директория>" << endl;
      return 0;
   }
   d = opendir(argv[1]);
   if (d == NULL)
   {
      cout << "Ошибка чтения директории" << endl;
      return 1;
   }
   while ((entry = readdir(d)) != 0)
   {
      cout << entry->d_name << " inode=" << entry->d_ino << endl;
   }
   closedir(d);
   return 0;
}
1
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 3
09.05.2013, 19:22  [ТС]
Огромное вам спасибо)) просто я больше привык к VBA и Си а тут задание дали чтобы на си++ все было)) голову поломал думал тоже что библиотеку забыл но так как совсем новичек незнал)) спасибо вам огромное) дайте тел. полтиничек хотяб в болгодарность отправлю)
0
...
 Аватар для anmartex
1910 / 1329 / 966
Регистрация: 12.02.2013
Сообщений: 2,172
09.05.2013, 19:25
Цитата Сообщение от Ctyd Посмотреть сообщение
дайте тел. полтиничек хотяб в болгодарность отправлю)
Ctyd, спасибо достаточно
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.05.2013, 19:25
Помогаю со студенческими работами здесь

Программа для считывания элементов таблицы
Напишите программу, которая сначала считывает элементы таблицы один за другим, затем выводит их в виде таблицы. Формат ввода На...

Программа для считывания действительных чисел
Помогите, пожалуйста! Написать программу, которая считывает в одномерный массив A действительные числа, записанные в столбце рабочего...

Программа для считывания данных из Word
Всем здравствуйте!! Мое задание: 1. Создать программу для считывания текста (ФИО, №) файлов из Ворда. То есть загружаем документ Word...

Программа для считывания двух строк
На Python Напишите программу, которая считывает две строки и выводит «ВЕРНО», если в обеих строках записаны слова да и нет в...

Программа для считывания штрих-кодов
Вот уже сутки пытаюсь найти программу для считывания, на базе windows mobile 6.5. Да не простую, а чтобы результаты сканирования возвращала...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru