Quote:
Originariamente inviato da !fazz
|
Già. Pensavo proprio a te, che ci hai a che fare spesso.
Quote:
Originariamente inviato da fano
Non so io ad aver inventato la definizione "C is portable assembler"
|
Senz'altro, ma ciò non vuol dire che tale affermazione abbia fondamento.
Quote:
|
il senso di quello che intendevo è che C è una via di mezzo ha costrutti di alto livello, nasconde i registri, ma poi ti permette di fare cose alla "assembler" tipo prendere un array di char scriverci un indirizzo a "caso", castarlo a puntatore a funzione ed eseguirlo ed eccoti bel bello in kernel mode partendo da un'applicazione utente!
|
Sì, si possono fare queste porcate, ma ciò che puoi fare lavorando in assembly è di gran lunga peggio.
Inoltre il C è molto, ma molto più ad alto livello dell'assembly. Anzi, a voler essere pignoli e standard alla mano, ha ben poco di basso livello.
Quote:
Originariamente inviato da Erotavlas_turbo
se hai bisogno di prestazioni utilizzi le stringhe in C fonte 1 fonte 2.
|
Le stringhe in C sono anche peggio, visto che conoscere la lunghezza richiede tempo O(n).
E' una delle peggiori strutture dati / implementazioni che siano state scelte per le stringhe.