Kurzusok
/
Elixir
Elixir
/
Tanterv
/
Binárisok
Bi

Binárisok ebben a kurzusban: Elixir

7 feladat

A(z) Binárisok fogalomról

  • A bináris típus a bitstring típus egy specializációja.
  • A binárisok bájtokból állnak.
    • A bájtok 8 bitből állnak.
    • A bájtokkal a 0 és 255 közötti számokat ábrázolhatod.
    • A bájtokkal végzett munka során gyakoriak a hexadecimális egészértékek: 0x00 és 0xFF között.
  • A bináris literálokat a <<>> speciális formával definiálod.
  • A <>/2 a bitstringek, binárisok és stringek összefűzésére használható.
<<255>> == <<0xFF>>
# Overflowing bits are truncated
<<256>> == <<0>>
<<256::size(16)>> == <<1, 0>>

<<"Hello">> == <<72, 101, 108, 108, 111>>

A nullbájt a <<0>> másik elnevezése.

A stringek kódolt bináris adatok

  • A stringek UTF-8 formátumban kódolt bináris adatok.
    • A kódolásuk 8 bites (egybájtos) egységekben történik, és akár 4 bájtot is használhatnak több mint 255 karakter ábrázolásához.
    • Egy string hossza nem feltétlenül egyezik meg a bájtméretével.
# This string has a string length of 5, but is made up of 7 bytes
string = "cześć"
String.length(string) != byte_size(string)

# Even emoji strings are encoded binaries
"👍" == <<240, 159, 145, 141>>

Mintázatillesztés bináris adatokon

# Ignore the first 8 bytes, bind the remaining variable sized binary to `body`
<<_::binary-size(8), body::binary>>

Ugyanez stringekkel is megtehető:

# bind the first 5 bytes to `name`,
# match the string literal " the ",
# bind remaining bytes to `species`
<<name::binary-size(5), " the ", species::binary>> = <<"Frank the Walrus">>
{name, species}
# => {"Frank", "Walrus"}
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg

Tanuld meg a(z) Binárisok fogalmat

A gyakorlás zárolva

Oldj fel még 1 feladatot, hogy gyakorolhasd a(z) Binárisok fogalmat