nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 8. juni 2007
(Plus, nu er jeg på en mission for at finde det...)
Tak, Todd T
nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 8. juni 2007
Jeg ser
- 25. oktober 2004
- 8. juni 2007
Hvis du ikke vil eller har brug for at bekymre dig om lokaliteter, så:
_stricmp( str1.c_str(), str2.c_str() )
Er den enkleste løsning (også ret effektiv).
Lokaliteter komplicerer tingene en del (godt, det er virkelig manglerne i standardbiblioteket, der gør det så kompliceret).
Lad mig se om jeg kan finde et link til noget der omhandler lokaliteter...
her er en: http://lafstern.org/matt/col2_new.pdf
Jeg ved ikke om han rigtig ved hvad han taler om, men det lyder som om han gør det. Han fortsætter et stykke tid om dette, så du kan forstå problemet, men du kan springe til bunden og tjekke den sidste kodeblok for hans bedste løsning. T
nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 9. juni 2007
Tak for bekræftelsen - glad for at se, at jeg ikke bare manglede det.
Todd
Kode: |_+_| T
nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 10. juni 2007
iSee sagde: Hvis du ikke vil eller behøver at bekymre dig om lokaliteter, så:
_stricmp( str1.c_str(), str2.c_str() )
Er den enkleste løsning (også ret effektiv).
OK, jeg giver op. Hvor fandt du på _stricmp ?
Todd I
wittegijt
- 18. februar 2007
- Eindhoven
- 11. juni 2007
toddburch sagde: OK, jeg giver op. Hvor fandt du på _stricmp ?
Todd
Det er en Windows-ting. Unix-biblioteker bruger strcasecmp, det er i .
Wittegijt.
Jeg ser
- 25. oktober 2004
- 11. juni 2007
toddburch sagde: OK, jeg giver op. Hvor fandt du på _stricmp ?
Todd
Okay, undskyld jeg smider det derud.
Jeg troede, det var en del af standard C-biblioteket, men det er det ikke. Det vises bare, uofficielt, under forskellige navne i forskellige implementeringer af C-biblioteket. Så en sammenligning uden store og små bogstaver er heller ikke en officiel del af det officielle C-bibliotek. Jøss. Det virker som sådan en kæmpe udeladelse. Under VS er det _stricmp() eller stricmp(), under CodeWarrior til Mac er det stricmp() eller strcasecmp(), og under OS X 10.4/Xcode er det strcasecmp().
Når jeg tænker på det, burde den førende understregning have givet mig hintet.
Jeg gætter på, at hvis du vil overholde C-standarden, skal du implementere din egen ved at bruge tolower() (eller toupper()) i en loop.
Lad os se, at et første pass kan være (Dette er ude af mit hoved, IKKE testet kode):
Kode: |_+_|
I hvert fald igen, undskyld det dårlige råd. Jeg har vel ikke rigtig lavet en masse C/C++-kodning på Mac OS X, hvor jeg ville undgå OS API (CFString osv.) siden CodeWarrior-dagene... T
nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 11. juni 2007
OK, nu til strcasecmp() . Webstedet cppreference.com, jeg har brugt, ser kun ud til at være standard C/C++. Jeg har googlet efter en Mac OS X XCode-specifik referenceside og har ikke fundet et. Hvad er et godt Mac OS X C++ referencewebsted? Eller er der en C++ reference indbygget i XCode hjælp et eller andet sted, og jeg har bare ikke fundet den? Eller, hvis alt dette ikke er tilfældet, er der en i Apple Development Center, som jeg også har savnet?
Så store som XCode-diskbillederne er, som jeg downloader og installerer, når jeg bliver bedt om det, er der helt sikkert en sprogreference derinde - jeg mener, de Java-ting, jeg downloadede i starten, var ENORME.
Todd
Krevnik
- 8. september 2003
- 11. juni 2007
toddburch sagde: OK, nu til strcasecmp() . Webstedet cppreference.com, jeg har brugt, ser kun ud til at være standard C/C++. Jeg har googlet efter en Mac OS X XCode-specifik referenceside og har ikke fundet et. Hvad er et godt Mac OS X C++ referencewebsted? Eller er der en C++ reference indbygget i XCode hjælp et eller andet sted, og jeg har bare ikke fundet den? Eller, hvis alt dette ikke er tilfældet, er der en i Apple Development Center, som jeg også har savnet?
Det er der, men jeg tror ikke, det går ud over de C-funktioner, der er i POSIX-laget, kun alle Apples tilføjelser til POSIX. Du kan bruge terminalen til at få adgang til man-sider på nogle af disse funktioner. 'man strcasecmp' fører dig direkte til siden, der taler om den funktion, og beskriver, hvordan du bruger den.
Jeg ser
- 25. oktober 2004
- 11. juni 2007
http://developer.apple.com/documentation/Darwin/Reference/ManPages/index.html
som er en indholdsfortegnelse for alt på OS X-man-siderne, inklusive C-biblioteksfunktionerne.
Xcode-referencebiblioteket får adgang til man-sider ud over andre ressourcer, så disse er alle tilgængelige via Xcode (jeg bruger 'Find valgt tekst i API-reference' hele tiden).
Det ser ud til, at C-funktionerne er i sektion 3. Det ser ud til, at dokumentationen for hver funktion indeholder en 'standard' eller 'historik' sektion, der giver noget info om, hvilken standard funktionen overholder. Tilsyneladende blev strcasecmp() flyttet fra 'string.h' til 'strings.h' af compliance-årsager. Jeg er ikke sikker på, præcis på hvilken måde det gør det kompatibelt. Jeg gætter på, at det betyder, at ikke-standardfunktioner ikke skal vises i string.h, så de flyttede den til en anden header-fil. T
nedsmeltning
Original plakat- 4. december 2006
- Katy, Texas
- 11. juni 2007
Populære Indlæg