Pythonissa ctypes-moduuli on osa standardikirjastoa, ja se mahdollistaa C-kirjastojen käyttöä Python-koodissa. ctypes.CDLL on erityinen funktio, jota käytetään ladataksesi ja vuorovaikuttaa C-dynamiikkakirjastojen (shared libraries) kanssa.
ctypes.CDLL-funktion avulla voit luoda Python-objektin, jonka kautta voit kutsua C-kirjastosta löytyviä funktioita. Tällä tavoin voit hyödyntää C-koodin tehoa ja mahdollisuuksia suoraan Python-sovelluksessasi.
Esimerkki käytöstä:
Oletetaan, että sinulla on C-kirjastosi nimeltä mylib.so (Linuxissa) tai mylib.dll (Windowsissa), ja se sisältää funktion my_function:
🔹🔹🔹
// mylib.c
#include <stdio.h>
void my_function() {
printf("Hello from C!\n");
}
🔹🔹🔹
Voit käyttää ctypes.CDLL-funktion avulla tätä funktiota Pythonissa seuraavasti:
🔸🔸🔸
import ctypes
# Lataa C-kirjasto
mylib = ctypes.CDLL('./mylib.so') # käytä .dll Windowsissa
# Kutsu C-funktiota
mylib.my_function()
🔸🔸🔸
Lisäopastusta, jossa myös parametrien välitystä ym.
https://coderslegacy.com/python/ctypes-tutorial/
C-kirjaston kutsuminen Pythonista
Anonyymi-ap
0
1183
Vastaukset
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Taas puukotus yläristillä!
Tänään taas puukotettu hengiltä ihminen Kuopiontien läheisyydessä yläristillä! Nyt näitä alkaa olla viikoittain!631932Mitä teillä grillataan juhannuksena? Anna oma vinkkisi grilliherkkuihin
Kesä ja juhannus on grillailun kulta-aikaa. Mitä teillä grillataan juhannuksena? Anna oma vinkkisi grilliherkkuihin. Ka701316La Promesa sarjan ystäville iso pettymys - Yleltä lisäinfoa asiasta
La Promesa suosikkisarjan kohtalosta on tullut tietoa. Tämä ei kyllä välttämättä ilahduta sarjan faneja. Lue lisää: htt12993- 98938
- 87822
- 98705
Nyt kun olen vähän huppelissa niin uskallan sanoa
Mikä minua oikein närästää... Tiedän että meillä on ollut vaikeaa mutta miten kauan sulla on ollut toinen mies vai oliko49610- 38544
- 56517
Työttömät risusavottaan
Tuli tässä juhannusnuotiolla sellainen idea mieleen, että miksei työttömiä velvoiteta tekemään hanttihommia, kuten risus240464