Programmazione in Linux (C ++) [chiuso]

-2

Quindi non so se questo è il posto giusto per chiederlo. Sono nuovo alla programmazione, non sono molto coinvolto (conosco classi, matrici, funzioni..ecc (cose di base)).

Stavo programmando con Visual Studio 2013, quindi ho deciso di cambiare il mio sistema operativo in Linux.

Le prime cose che noto è che il codice non è esattamente uguale alle intestazioni incluse. Per esempio: non posso usare conio.h e con esso non posso terminare la mia funzione principale con _getch (); la funzione.

La mia domanda è: qual è la differenza tra windows e programmazione linux? Qualcuno mi può consigliare dove posso guardare / leggere questo cambiamento (qual è il diverso e cosa posso usare con linux).

Ogni aiuto sarà apprezzato! Grazie in anticipo !! :)

    
posta Huntix 10.03.2015 - 13:25
fonte

3 risposte

3

Potresti anche essere interessato all'aspetto della programmazione del tuo compito. Quindi leggi Programmazione Linux avanzata , leggi intro (2) & pagine di syscalls (2) . Tieni presente lo POSIX standard.

Per la programmazione dei thread, leggi un buon tutorial sui thread di Posix o un tutorial sui thread di C ++ 11.

Per quanto riguarda la programmazione C ++, Qt e POCO i progetti dovrebbero interessarti (e forse anche Boost ): ti forniscono un quadro multipiattaforma.

Per quanto riguarda gli strumenti e le abitudini di programmazione, consulta questi suggerimenti .

Raccomando di utilizzare almeno C ++ 11 , non alcuni standard C ++ precedenti (vedi documentazione su < a href="http://en.cppreference.com/w/cpp"> cppreference & on cplusplus , ecc. ...). Quindi usa recenti versioni di compilatori (ad es. GCC 4.9 o Clang/LLVM 3.5 almeno, nella primavera del 2015). Non dimenticare di abilitare tutti gli avvisi e le informazioni di debug.

Studia il codice sorgente di alcuni software gratuito esistenti (vedi ad esempio sourceforge o github , ecc ...), imparerai molto. Prova anche a contribuire ad esso.

BTW, apprendendo altri linguaggi di programmazione (ad es. Schema con SICP , Haskell, Ocaml, Prolog , Python, ...) ti insegnerà anche molto (anche migliorare il tuo modo di pensare in C ++).

    
risposta data 10.03.2015 - 15:29
fonte
2

Esistono le funzionalità fornite dalla lingua e altre funzionalità disponibili. iostream per esempio è integrato nella lingua. conio.h è specifico di Windows. Ci sono anche altri header specifici per Linux.

    
risposta data 10.03.2015 - 15:59
fonte
1

La ragione per cui trovi le differenze è che la C che stai usando non è GNU C o ANSI C. È meglio se impari bene la lingua invece di cercare di trovare le differenze.

Suggerirei di fare riferimento

C: The C Programming Language, 2nd Edition di Brian W. Kernighan e Dennis M. Ritchie

C ++: Il linguaggio di programmazione C ++ (terza edizione) di Bjarne Stroustrup

    
risposta data 10.03.2015 - 13:37
fonte

Leggi altre domande sui tag