Προς το περιεχόμενο

Move Project in C


Kostasgsx

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα σε όλους!

 

Μου έχουν αναθέσει στην σχολή μια άσκηση,χωρίς όμως να μου έχουν διδάξει τον τρόπο.Η Ασκηση-Project είναι :

Προσοµοίωση της εντολής “MOVE” µε πρόγραµµα σε γλώσσα C µε συµπερίληψη όλων των δυνατών επιλογών (options) της αρχικής εντολής του DOS.

 

Οι κύριοι αυτοί λοιπόν μας έβαλαν αυτή την εργασία χωρίς όμως να μας έχουμε πει ποια είναι η εντολή για να μετακινείς αρχεία μέσω της C!Όποιος μπορεί να βοηθήσει παρακαλώ ας μου στείλει κάποιο μήνυμα ή ας παραθέσει τον κώδικα από κάτω σε σχόλιο.

Όλες οι επιλογές!

 

Στην εικόνα αυτή μπορείτε να δείτε τι κάνει η Move και ποιες είναι όλες οι δυνατές επιλογές της!

Ευχαριστώ προκαταβολικά!

Δημοσ.

Δεν υπάρχει εντολή στη C για να μετακινείς αρχεία. Υπάρχουν όμως μερικές συναρτήσεις που περιλαμβάνει η βιβλιοθήκη stdio.h και μπορούν να σε βοηθήσουν να προσομοιώσεις τη λειτουργικότητα που παρέχει η move. Συγκεκριμένα, δες τις συναρτήσεις rename και remove.

Δημοσ.

Μήπως μπορείς να παραθέσεις ένα κώδικα που να ικανοποιεί την άσκηση αυτή;Και ίσως με κάποια σχόλια στον κώδικα αυτό για να καταλάβω τι γίνεται ακριβώς;

Δημοσ.

Αυτό που ζητάς είναι να σου παραδώσω έτοιμη τη λύση της άσκησης χωρίς εσύ να ιδρώσεις καθόλου. Ή να έχεις δείξει τουλάχιστον κάποιον κώδικα που να δείχνει ότι το προσπάθησες έστω και λίγο και κάπου κόλλησες.

 

Εγώ προσωπικά δε δέχομαι να κάνω κάτι τέτοιο. Θα πρέπει να περιμένεις απάντηση από κάποιο άλλο μέλος που δεν έχει τέτοιους ηθικούς ενδοιασμούς...

Δημοσ.

Ξεκίνα σιγά-σιγά την υλοποίηση.

Πρώτα υποστήριξη των παραμέτρων και μετά υλοποίηση των επιμέρους λειτουργιών. Δεν είναι τόσο δύσκολο όσο φαίνεται.

 

φιλικά,

Δημοσ.

δεν μπορείτε να χρησιμοποιήσετε μέσα στην C εντολές της κονσόλας ?

 

 

off-topic ωραίους πληροφοριακούς βγάζουμε.......

Δημοσ.

δεν μπορείτε να χρησιμοποιήσετε μέσα στην C εντολές της κονσόλας ?

 

Μαλλον θα θεωριθει "cheating" αν εβαζε αντολες σε κονσολα μεσα απ το προγρμμά του. Παντως, ναι γινεται με τη συναρτιση system() που περνει ως argument ενα string, που ειναι αυτο που θα εγραφες στον κονσολα

 

off-topic ωραίους πληροφοριακούς βγάζουμε.......

Και βαζουμε... στα σπιτια μας και μας "φτιαχνουν" τους υπολογιστες...

Δημοσ.

Μαλλον θα θεωριθει "cheating" αν εβαζε αντολες σε κονσολα μεσα απ το προγρμμά του. Παντως, ναι γινεται με τη συναρτιση system() που περνει ως argument ενα string, που ειναι αυτο που θα εγραφες στον κονσολα

 

 

Και βαζουμε... στα σπιτια μας και μας "φτιαχνουν" τους υπολογιστες...

με την system εννοούσα....

off-topic υποτίθεται ότι πρέπει να γνωρίζουν και να κάνουν πάρα πάνω πράγματα από το να ξέρουν να φτιάχνουν έναν υπολογιστή, μόνο περιπου 10 άτομα από τα 100 είναι ζήτημα αν μπορούν να σου φτιάξουν το pc χωρίς φορματ η να στο αλλάξουν όλο....

φιλικά πάντα.

Δημοσ.

δεν μπορείτε να χρησιμοποιήσετε μέσα στην C εντολές της κονσόλας ?

 

 

off-topic ωραίους πληροφοριακούς βγάζουμε.......

 

Αυτό θεωρείται cheating,λες να μην το σκέφτηκα;

 

Αυτό που ζητάς είναι να σου παραδώσω έτοιμη τη λύση της άσκησης χωρίς εσύ να ιδρώσεις καθόλου. Ή να έχεις δείξει τουλάχιστον κάποιον κώδικα που να δείχνει ότι το προσπάθησες έστω και λίγο και κάπου κόλλησες.

 

Είδα την Rename και την Remove,απλά επειδή δεν έχουμε ασχοληθεί με αρχεία στην C δεν ξέρω πως να ζητήσω το όνομα του αρχείου ..ή αν π.χ. το ζητήσω ως string από τον χρήστη τότε θα δουλέψει; Ξέρω πως ακούγεται γελοίο,αλλά δεν μας έχουν διδάξει τον τρόπο ενώ μας ζητάνε να το υλοποιήσουμε!Μπορείς έστω να μου δώσεις μια καθοδήγηση;

π.χ. :

1.Να ζητάει από τον χρήστη το όνομα του αρχείου που θέλει να κάνει move.

2.Μετά να κάνει move-rename με τον κώδικα που δίνει η σελίδα.

3.Και τέλος να κάνει remove το αρχικό αρχείο με τον κώδικα που δίνει η σελίδα.

 

Υ.Γ.: Πώς ζητάς το path από τον χρήστη;

Δημοσ.

Αν σας έχουν μάθει να διαβάζετε και να γράφετε αρχεία τότε μπορείς απλά να κάνεις αυτά τα βήματα:

1. Διαβάζεις το αρχείο στην μνήμη

2. Γράφεις τα δεδομένα του αρχείου στην καινούργια θέση

3. Διαγράφεις το παλιό αρχείο.

 

Δεν ξέρω αν υπάρχει και πιο γρήγορος τρόπος από αυτά τα τρία βήματα αλλά εμένα αυτό μου ήρθε τώρα...

Δημοσ.
Υ.Γ.: Πώς ζητάς το path από τον χρήστη;

το δίνεις στη "σύνταξη" της εντολής

 

project_Astakos_move /Katar/kefalaia/ena_tris.euro /Perhfanh_Ellas/exoun_lamvanein/misc/ena_tris.eu

 

^_όνομα_εντολής_σου_^ ^_από_πηγή_άντλησης_ων_πόρων_^ ^_σε_προορισμό_για_κατανάλωση_των_πόρων_^

 

 

άν τα θέλεις όλα τα..αρχεία

 

project_Astakos_move /Katar/kefalaia/*.euro /Perhfanh_Ellas/exoun_lamvanein/misc/

 

καλή επιτυχία κώστα

καί χρόνια πολλά!

 

 

 

_ttp://en.wikipedia.org/wiki/C_syntax < Command-line arguments

_ttp://en.wikipedia.org/wiki/Rename_©

_ttp://en.wikipedia.org/wiki/Remove_©

βάλε h στη θέση του _

 

 

είδες την move του dos στο "φυσικό" της περιβάλλον

ή μόνο απο το screenshot που μας παρέθεσες ;

 

δεν είμαι προγραμματιστής!

.

Δημοσ.

Πριν μερικά χρόνια είχε τεθεί το ίδιο ερώτημα στο παρόν φόρουμ. Τότε είχα δημοσιεύσει μια απλή λύση η οποία έλυνε εν μέρη το κύριο ζητούμενο του ερωτήματος με μια όσο το δυνατόν πιο βατή (naive) μεθοδολογία (με διάφορα μειονεκτήματα που όμως ίσως σου δώσει μια ιδέα για το τι πρέπει περίπου να κάνεις) ενώ είχαν προταθεί φυσικά και άλλες λύσεις. Βέβαια πλήρης απάντηση δεν δόθηκε τότε καθώς η εξομοίωση όλων των δυνατοτήτων της εντολής MOVE του DOS είναι μια πολύπλοκη διαδικασία που οπωσδήποτε δεν μπορεί να αναλυθεί πλήρως εδώ και που αμφιβάλλω αν μπορεί να υποστηριχθεί σε μια πιθανή εξέταση (έστω και αν αναρτηθεί από κάποιον έτοιμη) αν δεν έχεις ικανή γνώση του διαπραγματευόμενου αντικειμένου.

 

Συνεπώς, πρέπει να ασχοληθείς αφ' εαυτού με το ζήτημα και βάση της διδαχθείσας ύλης να δοκιμάσεις να το "βγάλεις".

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...