تغيير دليل العمل الحالي في لغة C
غالبًا ما تتم مواجهة الحاجة إلى ضبط دليل العمل الحالي عند العمل مع الملفات والإدخال / الإخراج العمليات. تقدم لغة C حلاً مستقلاً عن النظام الأساسي لهذه المهمة من خلال استخدام وظيفة std::filesystem::current_path.
حل C 17: std::filesystem::current_path
في C 17، توفر مكتبة نظام الملفات std::filesystem واجهة برمجة تطبيقات مشتركة بين الأنظمة الأساسية لعمليات نظام الملفات. تسمح الدالة std::filesystem::current_path باسترداد وتعيين دليل العمل الحالي.
مثال:
#include
int main() {
namespace fs = std::filesystem;
// Retrieve the current working directory
fs::path current_path = fs::current_path();
// Set the current working directory
fs::current_path(current_path / "new_directory");
}
في هذا المثال، نقوم أولاً باسترداد دليل العمل الحالي باستخدام وظيفة current_path وتخزينه في كائن fs::path. يمكننا بعد ذلك استخدام كائن fs::path لتعيين دليل العمل الحالي إلى مسار جديد، في هذه الحالة، الدليل الفرعي "new_directory".
التوافق
تتوفر مكتبة نظام الملفات std::files في الإصدار C 17 والإصدارات الأحدث. بالنسبة للإصدارات الأقدم من لغة C، تتوفر خيارات خاصة بالنظام الأساسي، مثل direct.h لنظام التشغيل Windows أو unistd.h لأنظمة UNIX/POSIX. ومع ذلك، تفتقر هذه الخيارات إلى إمكانية نقل std::filesystem::current_path.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3