Video: Snel programmeren in C++ (met geluid) 2024
Als u een map wilt aanmaken, kunt u de mkdir-functie. Als de functie de map voor u kan maken, wordt er een 0 geretourneerd. Anders wordt een niet-nulwaarde geretourneerd. (Wanneer u het uitvoert krijgt u een -1, maar uw beste gok is - altijd - om het te testen tegen 0.)
Hier is een voorbeeldcode (gevonden in het voorbeeld van de MakeDirectory) die deze functie gebruikt:
#omvatten # include # include using namespace std; int main () {if (mkdir ("… / abc")! = 0) {cout << "het spijt me, ik was niet" << endl; cout << "kan uw directory maken" << endl; cout << "zoals je me vroeg. Ik hoop echt" << endl; cout << "u kunt nog steeds bereiken" << endl; cout << "je doelen in het leven. Ga nu weg." << endl;} retourneer 0;}
Merk op (zoals gewoonlijk) dat je een schuine streep (/) hebt gebruikt in de aanroep naar mkdir. In Windows kunt u een slash of een backslash gebruiken. Maar als u een backslash gebruikt, moet u er twee gebruiken (zoals u normaal gesproken een backslash in een C ++ -tekenreeks zou krijgen).
Gebruik voor de overdraagbaarheid altijd een schuine streep naar voren. Nadat u dit voorbeeld hebt uitgevoerd, ziet u een nieuwe map genaamd abc toegevoegd aan de map / CPP_AIO / BookV / Chapter04 op uw systeem.
Het zou leuk zijn om in één klap een volledige directory-boomstructuur te maken - een oproep zoals mkdir ("/ abc / def / ghi / jkl") doen zonder een van de abc-, def- of ghi-directory's te hebben al bestaand. Maar helaas, dat kan niet. De functie maakt geen jkl-directory aan, tenzij de map / abc / def / ghi bestaat. Dat betekent dat je deze oproep in meerdere oproepen moet doorbreken: maak eerst / abc. Maak vervolgens / abc / def, enzovoort.
Als u alle mappen tegelijkertijd wilt maken, kunt u de functie system () gebruiken. Als u het systeem uitvoert ("mkdir abc def ghi jkl");, je kunt de map in één klap maken.