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

προγραμμα για c/c++


xrist0f0r0s

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

Δημοσ.

εκτος του αρχικου θεματος μας

 

ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac

τα win χρησιμοποιουν .exe, .msi

τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο)

ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile

να το κανεις τρεχουμενο .deb .exe ....

  • Απαντ. 43
  • Δημ.
  • Τελ. απάντηση
Δημοσ.
φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...

και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!!

Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα...

 

επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό...

 

Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)?

 

Δεν ξέρω μάλλον τελικά έχεις μυωπία. Πάρε ένα IDE VS express ασπουμε. Κανε ένα παράδειγμα με seg fault, και τρέξτο. Όχι απλά θα σου βγάλει ότι έγινε αυτό το λάθος αλλα θα σε πάει και στην γραμμή που έγινε για να το δεις. Βεβαια εξαρτάται από το λάθος αυτό το πράγμα. Νομίζω ότι είναι πιο καλο από ένα segmentation fault μήνυμα. Και μην προτείνεται την dev-c++. Αν θες κάτι για windows το καλύτερο compiler για windows φτιάχνει η εταιρία που φτιάχνει το windows απλά.

 

---------- Προσθήκη στις 01:16 ---------- Προηγούμενο μήνυμα στις 01:12 ----------

 

εκτος του αρχικου θεματος μας

 

ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac

τα win χρησιμοποιουν .exe, .msi

τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο)

ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile

να το κανεις τρεχουμενο .deb .exe ....

 

Το windows έχει PE φιλε format για τα εκτελέσιμα του, σε αντίθεση με linux που έχει το ELF. Η διαφορα όμως δεν βρίσκετε μονο στο format του φιλε. Το λειτουργικό παρέχει και κάποια API που είναι χαρακτηριστικά του συγκεκριμένου λειτουργικού συστήματος. Έτσι τα API στο linux είναι διαφορετικά από αυτά στο windows. Πρακτικά μπορείς να γραφεις crossplatform κώδικα αλλα πρέπει να χρησιμοποιείς τα macros η κάποιο framework που να σου παρέχει αυτήν την δυνατότητα - δες QT.

Δημοσ.
εκτος του αρχικου θεματος μας

 

ποια ειναι η διαφορα οταν γραφεις σε καποια γλωσσα και το project απεφθηνεται σε χρηστες των win,linux,mac

τα win χρησιμοποιουν .exe, .msi

τα linux .deb.rpm.tar.gz (ειναι συμπιεσμενο)

ποια οι διαφορες τους ως προς να γραψεις των ειδιο κωδικα στα διαφορα λειτουργικα και πως να το κανεις compile

να το κανεις τρεχουμενο .deb .exe ....

 

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

Η διαφορά έρχεται σε GUI, system I/O (χρήση συσκευών συστήματος) και γενικότερα σε εντολές που "μιλάνε" στο λειτουργικό σύστημα και όχι σε στάνταρ βιβλιοθήκες. Αλλά και πάλι χρησιμοποιώντας βιβλιοθήκες που υποστηρίζονται σε διάφορα λειτουργικά συστήματα (πχ QT, wxWidget για GUI) ο κώδικας που γράφεις είναι ο ίδιος και η βιβλιοθήκες αναλαμβάνουν τα υπόλοιπα.

Όσον αφορά το πώς παράγονται τα εκτελέσιμα αρχεία τότε ανάλογα που το κάνεις build βγαίνει και το αντίστοιχο αρχείο. Δηλαδή αν τον ίδιο κώδικα τον κάνεις build σε g++ σε εκδόσεις για Linux και Win τότε στα Win θα παραχθεί αρχείο .exe ενώ στο Linux εκτελέσιμο του Linux (δεν γνωρίζω την κατάληξή του).

 

 

επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό...

 

Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)?

 

Δεν γνωρίζω από πότε έχεις να χρησιμοποιήσεις IDE σε windows αλλά από αυτά που λες υποθέτω πάρα πολύ. Τα IDE που υπάρχουν παρέχουν απίστευτες δυνατότητες και τεράστια ευκολία στον προγραμματισμό. Αυτό που λες για λάθος στοίχιση, λάθη με τα κενά κτλ δεν το έχω συναντήσει ποτέ μου.

 

Γενικότερα όμως προγραμματίζεις στην πλατφόρμα στην οποία απαιτεί η δουλειά σου. Αν σε βάλουν να κάνεις πρόγραμμα αποκλειστικά για Windows, προσωπικά τουλάχιστον, το θεωρώ χαζό να πας σε Cross Platform επιλογές αντί του να χρησιμοποιήσεις το .NET το οποίο λειτουργεί πολύ πιο γρήγορα και είναι σίγουρα συμβατό στα Windows. Αντίστοιχα και με το Linux. Αν θέλεις να γράψεις κώδικα για το Linux δεν θα το κάνεις με εντολές .NET και να πάρεις βιβλιοθήκες για αυτό. Θα το κάνεις σε βιβλιοθήκες του Linux.

 

 

Αν θες κάτι για windows το καλύτερο compiler για windows φτιάχνει η εταιρία που φτιάχνει το windows απλά.

 

Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα :P) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform.

 

Έτσι λειτουργεί το .NET

Δημοσ.

@linuxs

post-103086-12906310327_thumb.jpg

Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)?

Τι θες να πεις;

 

Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα ) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform.

 

Δεν βλεπω πουθενα σημαδια απο CIL

 

>; Listing generated by Microsoft (R) Optimizing Compiler Version 16.00.30319.01 

TITLE	e:\Users\papi\documents\visual studio 2010\Projects\te\te\te.cpp
.686P
.XMM
include listing.inc
.model	flat

INCLUDELIB MSVCRTD
INCLUDELIB OLDNAMES

PUBLIC	??_C@_05CJBACGMB@hello?$AA@			; `string'
PUBLIC	_wmain
EXTRN	__imp__printf:PROC
EXTRN	__RTC_CheckEsp:PROC
EXTRN	__RTC_Shutdown:PROC
EXTRN	__RTC_InitBase:PROC
;	COMDAT ??_C@_05CJBACGMB@hello?$AA@
; File e:\users\papi\documents\visual studio 2010\projects\te\te\te.cpp
CONST	SEGMENT
??_C@_05CJBACGMB@hello?$AA@ DB 'hello', 00H		; `string'
CONST	ENDS
;	COMDAT rtc$TMZ
rtc$TMZ	SEGMENT
__RTC_Shutdown.rtc$TMZ DD FLAT:__RTC_Shutdown
rtc$TMZ	ENDS
;	COMDAT rtc$IMZ
rtc$IMZ	SEGMENT
__RTC_InitBase.rtc$IMZ DD FLAT:__RTC_InitBase
; Function compile flags: /Odtp /RTCsu /ZI
rtc$IMZ	ENDS
;	COMDAT _wmain
_TEXT	SEGMENT
_argc$ = 8						; size = 4
_argv$ = 12						; size = 4
_wmain	PROC						; COMDAT

; 8    : {

push	ebp
mov	ebp, esp
sub	esp, 192				; 000000c0H
push	ebx
push	esi
push	edi
lea	edi, DWORD PTR [ebp-192]
mov	ecx, 48					; 00000030H
mov	eax, -858993460				; ccccccccH
rep stosd

; 9    : 	printf("hello");

mov	esi, esp
push	OFFSET ??_C@_05CJBACGMB@hello?$AA@
call	DWORD PTR __imp__printf
add	esp, 4
cmp	esi, esp
call	__RTC_CheckEsp

; 10   : 	return 0;

xor	eax, eax

; 11   : }

pop	edi
pop	esi
pop	ebx
add	esp, 192				; 000000c0H
cmp	ebp, esp
call	__RTC_CheckEsp
mov	esp, ebp
pop	ebp
ret	0
_wmain	ENDP
_TEXT	ENDS
END

 

Δημοσ.

Τι έγινε ρε? Γίναμε όλοι linux-αδες και λέμε ότι μας κατέβει? Το VS 2010 το έχεις δει καθόλου? Άμα το δεις έλα μετά να ξανακάνουμε την συζήτηση...

Δημοσ.

Το καλύτερο και πιο γρήγορο compiler για όλες τις χρήσεις το φτιάχνει η Intel (έτσι φαίνεται από μετρήσεις τουλάχιστον). H Microsoft πλέον δεν βγάζει καθαρούς compiler που να μετατρέπει κώδικα σε γλώσσα μηχανής. Βγάζει κάτι ενδιάμεσο που μετατρέπει τον κώδικα σε εντολές .NET και μετά το λειτουργικό και η .NET μηχανή αναλαμβάνουν την παραγωγή εκτελέσιμου αρχείου και την εκτέλεσή του. Είναι κάπως σαν την Java δηλαδή (απλά πολύ πιο γρήγορα :P) και αυτό γιατί όπως δείχνει θέλουν να κάνουν το .NET cross-platform.

 

 

Καλά τι λες;;; Η Visual C++ της Microsoft φυσικά και βγάζει γλώσσα μηχανής και όχι CIL! Απλά παράλληλα η MS βγάζει και τον compiler για τις .Net γλώσσες, όπου μεταξύ άλλων, υπάρχει και C++.Net (και βγάζει CIL).

Επίσης ποιος λέει ότι οι compilers της Intel είναι οι πιο γρήγοροι και καλύτεροι;;; Γράψε ένα πρόγραμμα με Intel compiler, τρέξε benchmark σε AMD CPU και μετά δοκίμασε το ίδιο πρόγραμμα σε κάποιον άλλο compiler και πάλι σε AMD CPU και τα λέμε.

Δημοσ.

Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE...

Δημοσ.

Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE...

Δημοσ.

 

 

Δεν γνωρίζω το επίπεδό σου απο θέμα προγραμματισμού

...

Πρώτον και κυριότερον τα "Segmentation fault" εαν τα γνωρίζεις δεν τα βγάζει με μήνυμα!! Κολάει το pc...

Δεύτερον έχει ένα θέμα με την στοίχηση κτλ

φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...

και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!!

Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα...

 

επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό...

 

Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)?

 

Βρε αστέρι μου, θα μας κουζουλάνεις τελείως; Υπάρχουν μπόλικοι και άριστοι source code editors για τα Windows, όπως UltraEdit/Notepad++/EmEditor που σου πετάνε τα μάτια έξω εν σχέση με αυτό που λες, 100 φορές πλουσιότεροι σε features. Εμπορικά μεν προγράμματα, αλλά χαμηλού κόστους και αξίζουν τον κόπο γι αυτά που προσφέρουν.

Σχετικά με το "στοίχιση" μάλλον είναι ώρα να μάθεις τί είναι τα monospaced fonts.

Σχετικά με τα σφάλματα, μια χαρά τα βλέπεις και στα Windows ανάλογα τί εργαλεία χρησιμοποιείς κι εξάλλου υπάρχει και το "exception handling" αν το έχεις ακουστά κι αυτό.

Μη μας αυτώνεις τώρα, μια χαρά είναι και τα Windows και το Linux και όλα, παντού κάνεις τη δουλειά σου και τίποτα δεν είναι "φτιαγμένο για προγραμματισμό", κάθε κατεργάρης στον πάγκο του είναι.

Δημοσ.

 

 

Δεν γνωρίζω το επίπεδό σου απο θέμα προγραμματισμού

...

Πρώτον και κυριότερον τα "Segmentation fault" εαν τα γνωρίζεις δεν τα βγάζει με μήνυμα!! Κολάει το pc...

Δεύτερον έχει ένα θέμα με την στοίχηση κτλ

φίλε μου το gedit είναι σε Linux!!! ενώ το Notepad++ που ανέφερες υποψιάζομαι πως είναι για windows αν δεν κάνω λαθος..μάλλον μπρέρδεψες κατι...

και segmentation fault απο την στιγμή που βγάζει ανέβασε σε παρακαλώ μια εικόνα να δώ τι ακριβώς εννοείς...δεν νομίζω να έχω μυωπία!!!

Α, και μην μπερδέυεις τα IDE etc...στο gedit υπάρχουν αυτόματα...

 

επίσης όταν λέω στοίχηση NewProject εννοώ οτι γράφεις μια γραμμή>enter>tab etc αλλα η στοίχηση δεν γίνεται ομοιόμορφα...ακόμη με τα space γίνεται ένα μπέρδεμα καα την άποψή μου...δεν ξέρω αν κατάλαβες τι λέω αλλα για μένα τουλάχιστον δεν είναι καθόλου βολικό...

 

Ρε παιδιά, εντελώς φιλικά, πως μπορούν τα windows με κάποιο πρόγραμμα να συγκριθούν στο θέμα προγραμματισμού με τα προγράμματα στο Linux(κατα ένα μέρος γι αυτό είναι φτιαγμένα)?

 

Βρε αστέρι μου, θα μας κουζουλάνεις τελείως; Υπάρχουν μπόλικοι και άριστοι source code editors για τα Windows, όπως UltraEdit/Notepad++/EmEditor που σου πετάνε τα μάτια έξω εν σχέση με αυτό που λες, 100 φορές πλουσιότεροι σε features. Εμπορικά μεν προγράμματα, αλλά χαμηλού κόστους και αξίζουν τον κόπο γι αυτά που προσφέρουν.

Σχετικά με το "στοίχιση" μάλλον είναι ώρα να μάθεις τί είναι τα monospaced fonts.

Σχετικά με τα σφάλματα, μια χαρά τα βλέπεις και στα Windows ανάλογα τί εργαλεία χρησιμοποιείς κι εξάλλου υπάρχει και το "exception handling" αν το έχεις ακουστά κι αυτό.

Μη μας αυτώνεις τώρα, μια χαρά είναι και τα Windows και το Linux και όλα, παντού κάνεις τη δουλειά σου και τίποτα δεν είναι "φτιαγμένο για προγραμματισμό", κάθε κατεργάρης στον πάγκο του είναι.

Δημοσ.
Bloodshed Dev-C++ is a full-featured Integrated Development Environment (IDE) for the C and C++ programming languages. It uses the MinGW port of the GCC (GNU Compiler Collection) as its compiler. Ο MinGW είναι compiler, το Dev-C++ είναι IDE...

 

 

αυτο λεω και εγω ... αλλο IDE και αλλο compiler ... μπορεις να εχεις το Dev και να χρησιμοποιεις για παραδειγμα ms c compiler αλλα μπορεις και στο visual studio να βαλεις mignw , intel η οτι αλλο γουσταρεις ........ φιλικα και απο μενα linuxus μιας και ανταλλαζουμε αποψεις και γνωσεις

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

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

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