Just nu i M3-nätverket
Gå till innehåll

Konvertera en C sträng till python i python? Någon?


Micke_Johansson

Rekommendera Poster

Micke_Johansson

Hej,

 

sitter klurar på hur jag ska kunna konvertera kopiera och sedan använda en variabel som kommer från min C kod, sedan in till min python kod.

 

Några ideer koden kommer nedan:

 

Jag får en URL returnerad från C koden, i både C och Python är detta en struct om de nu är viktigt, vilket fall som så skulel jag vilja jämföra denna med hjälp av en assertEqual (URL, http://www.test.se), men detta går inte då returnerade värdet är en

C variabel.

 

Jag får fel utskrifter i python som säger att det är en c variabel om jag bara försöker med

print "test =", URL

 

Koden som jag kör är:

memmove(URL, data.URLFromC, ?? Vad ska stå här är första frågan?)

 

Jag antar jag måste köra en memmove för att få C strängen till en python sträng? Eller?

(Annars kan jag varken jämföra den eller printa den!)

 

Längden på strängen kan ju variera så vad ska jag köra här? en len(något? )

-----

 

 

Tacksam för hjälp mellan C o Python här.

Länk till kommentar
Dela på andra webbplatser

Hej Micke

 

Jag antar att du läst på lite om C API till Python så du satt upp listor av funktioner som kan anropas etc.

Troligen är det något liknande detta du skulle kunna behöva...det finns ett par sätt att göra det hela på, det nedan är ett av dem.

 

static PyObject *getURL( PyObject *self, PyObject *args )

{

std::string url;

 

//kod som hämtar URL

 

return Py_BuildValue("s", url.c_str());

}

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...