Rust – Binding delle variabili

Ora introduciamo la sintassi e la semantica del Rust.
Cominciamo a trattare il binding delle variabili, il binding è la procedura che il linguaggio utilizza per allocare una variabile in una porzione di memoria (una o più locazioni di memoria) destinata a contenere dei dati, suscettibili di modifica nel corso dell’esecuzione di un programma.
let è usato per introdurre il binding, tipo questo:

fn main() {
    let x = 5;
}

PATTERNS

In molti linguaggi, il fine del binding delle variabili si sarebbe chiamata variabile, ma le associazioni delle variabili in Rust hanno alcuni trucchi sulle loro maniche. Ad esempio, il lato sinistro di un’istruzione let è una pattern, non un nome di variabile. Ciò significa che possiamo fare cose come:

let (x, y) = (1, 2);

Ora x conterrà il valore 1 e y conterrà il valore 2. Per ora le funzionalità delle pattern non saranno da approfondire, ma più avanti, si.

ANNOTAZIONI SUI TIPI

Il Rust è un linguaggio tipicamente statico, il che significa che specifichiamo i nostri tipi in alto e vengono controllati al momento della compilazione. Allora perché compilare il nostro primo esempio? Beh, Rust ha questa cosa chiamata “inferenza di tipo”. Se riesce a capire qual è il tipo di qualcosa, Rust non ti richiede di esplicitamente digitarlo.

let x: i32 = 5;

Per aggiungere il tipo, se lo vogliamo, bisogna aggiungere i doppi punti (:), come visto qua sopra.
In questo caso abbiamo scelto di rappresentare x come un numero intero firmato a 32 bit. Il Rust ha molti tipi interi primitivi diversi. Cominciano con i per interi con firma e u per interi senza firma. Le dimensioni del numero intero possibili sono 8, 16, 32 e 64 bit.

Author: Neb

$whoami
Neb

$cat neb.txt

Keen on Computer Science, He always studies Computer Programming, Managment of Computer Systems and CyberSecurity (Offensive Side).
Have interest in experimental the use of new technologies. Co-founder of FreeNIX Security

My skills are:

Programming Skills:

– Web Development: JavaScript, PHP and HTML
– Desktop Application: Python3(Qt or GTK), C++(Qt)
– CLI Application: Python, C/C++, Crystal, Assembly and Rust

System Skills:

– Knowledge Unix Server System (CentOS, Ubuntu, Debian and BSD)
– Windows Server Administrator (AD, DC and many other)
– Virtualization with VMware, VirtualBox and Qemu

Network Skills:

– Indipendent Study of Routing and Switching

CyberSecurity Skills:

– Penetration Testing (Check Vuln):
– Exploitation
– Report

Location: Taranto, Apulia, Italy
Age: 18
Sex: Male