C Standard Library

Base.Libc.mallocFunction
malloc(size::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden malloc çağrısı yapın.

source
Base.Libc.callocFunction
calloc(num::Integer, size::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden calloc çağrısı yapar.

source
Base.Libc.reallocFunction
realloc(addr::Ptr, size::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden realloc çağrısı yapın.

free ile ilgili belgelerdeki uyarıya bakın; bu işlemi yalnızca malloc ile başlangıçta elde edilen bellek üzerinde kullanın.

source
Base.memcpyFunction
memcpy(dst::Ptr, src::Ptr, n::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden memcpy çağrısı yapın.

Julia 1.10

memcpy desteği en az Julia 1.10 gerektirir.

source
Base.memmoveFunction
memmove(dst::Ptr, src::Ptr, n::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden memmove çağrısı yapın.

Julia 1.10

memmove desteği en az Julia 1.10 gerektirir.

source
Base.memsetFunction
memset(dst::Ptr, val, n::Integer) -> Ptr{Cvoid}

C standart kütüphanesinden memset çağrısı yapın.

Julia 1.10

memset desteği en az Julia 1.10 gerektirir.

source
Base.memcmpFunction
memcmp(a::Ptr, b::Ptr, n::Integer) -> Int

C standart kütüphanesinden memcmp çağrısı yapın.

Julia 1.10

memcmp desteği en az Julia 1.9 gerektirir.

source
Base.Libc.freeFunction
free(addr::Ptr)

C standart kütüphanesinden free çağrısı yapar. Bunu yalnızca malloc ile elde edilen bellek üzerinde kullanın, diğer C kütüphanelerinden alınan işaretçiler üzerinde değil. C kütüphanelerinden elde edilen Ptr nesneleri, sistemde birden fazla libc kütüphanesi varsa, doğrulama hatalarını önlemek için o kütüphanede tanımlanan serbest bırakma fonksiyonlarıyla serbest bırakılmalıdır.

source
Base.Libc.errnoFunction
errno([kod])

C kütüphanesinin errno değerini alır. Bir argüman belirtilirse, errno değerini ayarlamak için kullanılır.

errno değerinin geçerliliği, yalnızca onu ayarlayan bir C kütüphanesi rutinine yapılan bir ccall'dan hemen sonradır. Özellikle, bir REPL'deki bir sonraki istemde errno'yu çağırmak mümkün değildir, çünkü istemler arasında birçok kod çalıştırılır.

source
Base.Libc.strerrorFunction
strerror(n=errno())

Bir sistem çağrısı hata kodunu açıklayıcı bir dizeye dönüştürür.

source
Base.Libc.FormatMessageFunction
FormatMessage(n=GetLastError())

Bir Win32 sistem çağrısı hata kodunu tanımlayıcı bir dizeye dönüştür [yalnızca Windows'ta mevcuttur].

source
Base.Libc.timeMethod
time(t::TmStruct) -> Float64

Bir TmStruct yapısını epoch'tan itibaren geçen saniye sayısına dönüştürür.

source
Base.Libc.strftimeFunction
strftime([format], time)

Zamanı, epoch'tan itibaren geçen saniye sayısı veya bir TmStruct olarak verilen, belirtilen formatı kullanarak biçimlendirilmiş bir dizeye dönüştürür. Desteklenen formatlar, standart C kütüphanesindeki ile aynıdır.

source
Base.Libc.strptimeFunction
strptime([format], timestr)

Biçimlendirilmiş bir zaman dizesini, saniye, dakika, saat, tarih vb. veren bir TmStruct'a ayrıştırır. Desteklenen biçimler, standart C kütüphanesindekilerle aynıdır. Bazı platformlarda, zaman dilimleri doğru bir şekilde ayrıştırılmayabilir. Bu işlevin sonucu, epoch'tan itibaren saniyelere dönüştürmek için time'a geçirilecekse, isdst alanı manuel olarak doldurulmalıdır. Bunu -1 olarak ayarlamak, C kütüphanesine zaman dilimini belirlemek için mevcut sistem ayarlarını kullanmasını söyleyecektir.

source
Base.Libc.TmStructType
TmStruct([saniye])

Epoch'tan itibaren geçen saniye sayısını, sec, min, hour, mday, month, year, wday, yday ve isdst alanlarıyla ayrıştırılmış formata dönüştürür.

source
Base.Libc.FILEType
FILE(::Ptr)
FILE(::IO)

A libc FILE*, açılmış bir dosyayı temsil eder.

ccall için bir Ptr{FILE} argümanı olarak geçirilebilir ve ayrıca seek, position ve close destekler.

Bir FILE, sıradan bir IO nesnesinden oluşturulabilir, sağlanan dosya açık olmalıdır. Daha sonra kapatılmalıdır.

Örnekler

julia> using Base.Libc

julia> mktemp() do _, io
           # libc'den `puts(char*, FILE*)` kullanarak geçici dosyaya yaz
           file = FILE(io)
           ccall(:fputs, Cint, (Cstring, Ptr{FILE}), "hello world", file)
           close(file)
           # dosyayı tekrar oku
           seek(io, 0)
           read(io, String)
       end
"hello world"
source
Base.Libc.flush_cstdioFunction
flush_cstdio()

C stdout ve stderr akışlarını boşaltır (dış C kodu tarafından yazılmış olabilir).

source
Base.Libc.systemsleepFunction
systemsleep(s::Gerçek)

s saniye boyunca yürütmeyi askıya alır. Bu işlev, Julia'nın zamanlayıcısına geçiş yapmaz ve bu nedenle uyku süresi boyunca çalıştığı Julia ipini engeller.

Ayrıca bkz. sleep.

source
Base.Libc.mkfifoFunction
mkfifo(path::AbstractString, [mode::Integer]) -> path

path'te bir FIFO özel dosyası (adlandırılmış boru) oluşturur. Başarı durumunda path'i olduğu gibi döndürür.

mkfifo yalnızca Unix platformlarında desteklenmektedir.

Julia 1.11

mkfifo, en az Julia 1.11 gerektirir.

source