# include # include // // Program 10.4, Stephen Kochan, Programming in C. // int main ( void ); bool equalStrings ( const char s1[], const char s2[] ); int main ( void ) { const char stra[] = "string compare test"; const char strb[] = "string"; printf ( "\"%s\" and \"%s\"", stra, strb ); if ( equalStrings ( stra, strb ) ) { printf ( " are equal.\n" ); } else { printf ( " are NOT equal.\n" ); } printf ( "\"%s\" and \"%s\"", stra, stra ); if ( equalStrings ( stra, stra ) ) { printf ( " are equal.\n" ); } else { printf ( " are NOT equal.\n" ); } printf ( "\"%s\" and \"%s\"", strb, "string" ); if ( equalStrings ( strb, "string" ) ) { printf ( " are equal.\n" ); } else { printf ( " are NOT equal.\n" ); } printf ( "\"%s\" and \"%s\"", strb, "string " ); if ( equalStrings ( strb, "string " ) ) { printf ( " are equal.\n" ); } else { printf ( " are NOT equal.\n" ); } return 0; } bool equalStrings ( const char s1[], const char s2[] ) { int i; bool value; i = 0; while ( true ) { if ( s1[i] != s2[i] ) { value = false; return value; } // // Characters are equal. If they are "NULL", we are done. // if ( s1[i] == '\0' ) { value = true; return value; } // // Get ready for next character. // i = i + 1; } }