#include <stl.h> #include <iostream.h> #include <string.h> bool char_str_less (const char* a_, const char* b_) { return ::strcmp (a_, b_) < 0 ? 1 : 0; } char* str [] = { "a", "a", "b", "b", "q", "w", "z" }; int main () { const unsigned strCt = sizeof (str)/sizeof (str[0]); cout << "d can be inserted at index: " << upper_bound (str, str + strCt, "d", char_str_less) - str << endl; return 0; }