So che ci sono modi per fare case ignora confronto che coinvolgono scorrendo le stringhe o uno good one su SO ha bisogno di un'altra libreria. Ho bisogno di metterlo su altri computer che potrebbero non averlo installato. C'è un modo per usare le librerie standard per fare questo? In questo momento sto solo facendo ...Caso stringa insensitive confronto C++
if (foo == "Bar" || foo == "bar")
{
cout << "foo is bar" << endl;
}
else if (foo == "Stack Overflow" || foo == "stack Overflow" || foo == "Stack overflow" || foo == "etc.")
{
cout << "I am too lazy to do the whole thing..." << endl;
}
Questo potrebbe migliorare drasticamente la leggibilità e l'usabilità del mio codice. Grazie per aver letto fino a qui.
Seriamente? Anche se non ci fosse un modo integrato, potresti * facilmente * scrivere una funzione per farlo piuttosto che forzare brutalmente ogni confronto individuale. Cosa c'è di sbagliato nel scorrere le stringhe? Questo è ciò che qualsiasi libreria che userete farà comunque. –
stricmp è disponibile ovunque. – arx
librerie Quali standard disponibili dipendono da quale versione di compilatore C++ si pensa di utilizzare per compilare il binario. Ad esempio, C++ 0x ha il supporto regex. Per i compilatori più vecchi, è possibile utilizzare stricmp. – Alan