[PHP -> C] Strängar som index i C

Permalänk
Medlem

[PHP -> C] Strängar som index i C

Hej!

Har ett litet problem med att översätta ett program skrivet i PHP till C.

I PHP-filen finns en array som använder sig av strängar som index för att sätta ett int-värde

Ex:

for($i=0;$i<$bound;$i++){ $array[$somestring] = $someinteger; }

Finns det någon möjlighet att använda strängar (c-strings) som index i C? Har aldrig stött på det tidigare. Om inte, vad finns det för "workarounds" till ett sånt här problem??

Tack för hjälpen!

Psy

Fel rubrik
Permalänk
Medlem

C har inget inbyggt stöd för det, du får förlita dig på en så kallad hash map.
Tänk dig att du har en funktion som tar en sträng som input och skapar en integer utifrån den. Du kan då låta din array spara både ditt värde och din integer tillsammans. och du kan på så sätt slå upp det värde i arrayen som också lagrar den integer som skapats av strängen.

Det bör finnas många libs för det om du inte vill skriva det själv.

Visa signatur

void@qnet
teeworlds, stålverk80, evil schemer, c, c++
Languages shape the way we think, or don't.

Permalänk
Medlem
Skrivet av jdv:

C har inget inbyggt stöd för det, du får förlita dig på en så kallad hash map.
Tänk dig att du har en funktion som tar en sträng som input och skapar en integer utifrån den. Du kan då låta din array spara både ditt värde och din integer tillsammans. och du kan på så sätt slå upp det värde i arrayen som också lagrar den integer som skapats av strängen.

Det bör finnas många libs för det om du inte vill skriva det själv.

Sant, funderade på det från början men det verkade lite overkill eftersom det är en sån liten del av php-programmet som utnyttjar den arrayn. Men eftersom inget stöd för det finns i C får jag väl försöka hitta nån simpel implementering av en hash map. Tack för hjälpen!

Permalänk
Medlem
Permalänk
Medlem
Skrivet av iXam:

Glib är väl kanske overkill om det bara är en Hashmap man är ute efter.

Permalänk
Medlem

Nej det är det absolut inte. Statisk länkning så tar den ändå endast med det som används. Och sedan bör alla program skrivna i C använda Glib till det mesta.

Permalänk
Medlem
Skrivet av Micket:

Och sedan bör alla program skrivna i C använda Glib till det mesta.

Alla? Tycker personligen att det är ganska irriterande med saker som beror på Glib, på de plattformar där Glib inte är "normen" (dvs. i princip allt som inte är Linux).