se(vero) - pagina 5

 
Igor Makanu:

Non mi sbaglio del tutto, ci sono linguaggi simili al C, ma sono legati a compilatori specifici, per lo più compilatori che vengono con i controller

Visual Studio può facilmente compilare in C
Nelle impostazioni del progetto si imposta l'opzione per compilare in C o C++

 
Roman:

Visual Studio può facilmente compilare in C.
Nelle impostazioni del progetto impostate l'opzione per compilare in C o C++

questo è un discorso diverso, ora è più corretto parlare del compilatore stesso

 
и ...
 
Igor Makanu:

questo è un discorso diverso, ora è più accurato parlare delle caratteristiche del linguaggio del compilatore stesso

In visual studio per C, c'è una definizione BOOL che si estende in int
(un piccolo espediente da sofista))

 
Igor Makanu:

Beh, non del tutto sbagliato, i linguaggi simili al C esistono, ma sono legati a compilatori specifici, per lo più compilatori che vengono con i controller

ma sono un fan del software mcrosoft, se hanno un bool allora è lìhttps://docs.microsoft.com/ru-ru/cpp/cpp/bool-cpp?view=vs-2019

SZZ: google trovato C bool

Beh, almeno c'è un tale bool ))))

Naturalmente C++ ha un bool e C no. Lo sto studiando ora e ho un esame C dopodomani. Quindi mi piace.
Sì, è vero, il C è più usato per l'hardware ora. Non si scrivono applicazioni per il mondo visibile in esso. Ma questo non lo rende meno richiesto.

Sorprendentemente, supererà presto Java in popolarità e ne uscirà vincitore

 
Nikolai Semko:

Naturalmente C++ ha un bool e C no. Lo sto studiando ora e ho un esame C dopodomani. Quindi mi piace.
Sì, è vero, il C è usato più per l'hardware ora. Non si scrivono applicazioni per il mondo visibile in esso. Ma questo non lo rende meno richiesto.

Sorprendentemente, supererà presto Java in popolarità e ne uscirà vincitore

Buona fortuna per l'esame. Con il tuo livello pre-C, puoi facilmente passare l'esame.
Non c'è niente di complicato in C. La nitidezza del linguaggio lo rende facile da capire.
Non è come i linguaggi interpreti non tipizzati, che sono scritti nello stesso C)) dove tutto è nascosto allo sviluppatore.
Il linguaggio Python è scritto in C. Carl! )) È una ragione in più per scrivere la libreria di integrazione con Py.
Vi siete mai chiesti perché la gente scrive C per l'hardware? È semplicemente veloce per questo scopo.
E nel nostro business la velocità è anche molto importante. Non escludo che il linguaggio MQL sia stato scritto in C con ottimizzazione assembler.
Perché lo penso, perché il design dell'applicazione non è cambiato praticamente dalla nascita.
C'è una libreria GUI per C, accoppiata con finestre di piccoli linguaggi.
Ci sono librerie GUI per C, come ho fatto una ricerca, e il design del terminale è molto simile alla libreria C.
Anche questa libreria non dà libertà agli architetti, a causa della sua limitazione Cish.
Ma la priorità qui è la velocità, non la bellezza.

 
Roman:

Buona fortuna per l'esame. Con il tuo livello pre-C, puoi facilmente passare l'esame.
Non c'è niente di complicato in C. La nitidezza del linguaggio lo rende facile da capire.
Non è come i linguaggi interpreti non tipizzati, che sono scritti nello stesso C)) dove tutto è nascosto allo sviluppatore.
Il linguaggio Python è scritto in C. Carl! )) È una ragione in più per scrivere la libreria di integrazione con Py.
Vi siete mai chiesti perché la gente scrive C per l'hardware? È semplicemente veloce per questo scopo.
E nel nostro business la velocità è anche molto importante. Non escludo che MT5 sia scritto in C con ottimizzazione assembler.
Perché il design dell'applicazione non è cambiato praticamente dalla nascita.
L'applicazione utilizza alcune librerie GUI per C in combinazione con le finestre di piccoli software. Ci sono librerie GUI per C; ho cercato una volta.
Questa libreria non dà alcuna libertà agli architetti, a causa delle sue limitazioni C.
Ma la priorità qui è la velocità, non la bellezza.

Grazie.
Sì, infatti, non c'è niente di complicato in C. Niente OOP, niente classi. Ma ci sono delle indicazioni. A causa di questo, i programmatori moderni che hanno iniziato con Python, Java, ecc. pensano che C sia qualcosa di molto astruso per nerd. E in generale un colpo al piede.
Pensavo di poter lavorare bene con i puntatori, ma mentre imparavo, mi sono reso conto che il mio livello era molto basso. Si possono fare tali meraviglie con i puntatori. È meglio di OOP.
Sì, C è il linguaggio più veloce. Penso che anche Assembler non sarebbe in grado di competere con esso a causa del suo potente compilatore ottimizzante.
Ma ciò che mi ha sorpreso di più è la velocità di Java. Java è più veloce di MQL5 e più lento di C del 10-40%. In alcuni casi è anche più veloce. E questo nonostante il fatto che Java sia "una specie" di interprete (in realtà non è proprio un interprete in senso convenzionale). Sì, avete bisogno di una macchina Java, ma il bytecode java eseguibile è molto compatto. Penso che non molti sappiano che molti degli IDE più avanzati sono scritti in Java (IntelliJ IDEA, NetBeans, Eclipse).
Ma voglio dire che MQL5 è un linguaggio molto bello. Mi sento più a mio agio con nessun'altra lingua che con questa, come se avesse preso il meglio da molte lingue. Sì, ci sono ancora molti bug, ma questo è solo un segno del rapido sviluppo e questo è gestibile.

 
Igor Makanu:

Il linguaggio C non esiste più da molto tempo, C++ aveva sicuramente un bool

E il linguaggio C non sa di non esistere, si sta sviluppando attivamente - C99, C11, C18, C2x

C2x è un nome informale per la prossima (dopo C18) revisione principale dello standard del linguaggio C.

Si prevede che non sarà votato prima del 2021.


Non molto idoli eletti, se hanno microsoft specifico su microsoft specifico, non usare quello g...... È più probabile che scompaia per i piccoli sofisti con i loro mestieri storti che per l'enorme massa delle biblioteche Cish.

Dovresti usare compilatori decenti - gcc, clang, seguono gli standard.

 

Non so...

Secondo me, sia questi blocchi "vuoti" che i "cicli infiniti" (sia for che while) sono un cattivo stile di programmazione, pericoloso per gli errori potenzialmente difficili da calcolare.

L'operatore di controllo delle condizioni del ciclo non dovrebbe essere privo di significato, ma avere un certo peso. Se abbiamo un "ciclo infinito", significa che ci sono alcune uscite aggiuntive o interruzioni all'interno del ciclo e non sono sempre ovvie. A proposito, neanche a me piace l'operatore break - uso sempre l 'operatore continue in un ciclo.


E come è stato detto qui l'offuscamento del codice è semplicemente infantile... Grandi programmatori-copisti riuniti qui che hanno paura che qualcuno venda il loro codice o ottenga milioni di dollari in altri modi... L'orgoglio è uno dei peccati capitali!

 

Vict:

È più probabile che scompaia di lui, vista la vasta gamma di biblioteche Cish.

Una storia:

c'è un window manager chiamato Way Cooler, e hanno iniziato a produrlo nel nuovo Rust. Ma avendo affrontato il mondo C, e avendo mangiato molti cactus, si è deciso di riscrivere tutto in C http://way-cooler.org/blog/2019/04/29/rewriting-way-cooler-in-c.html. Il suo messaggio era: "se devi riscrivere tutto il mondo per evitare di scrivere in C, non ne vale la pena, è meglio spendere il tuo tempo in qualcos'altro".

Giving up on wlroots-rs
  • 2019.04.29
  • way-cooler.org
Way Cooler is a Wayland compositor that was written in Rust using wlc. Since last April I’ve been rewriting it to use wlroots. In order to do that however I had to wrap the library so that it could be used in Rust. I worked on wlroots-rs and put Way Cooler on the back burner for a long time. After over 1,000 commits I’m giving up on it...