Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C
Expertise: Intermediate
May 29, 2003

Check the Correct Balance of Brackets in Arithmetic Expressions

Brackets are well balanced if each '(' has its ')'. The argument str represents the array of characters which contains the expression.

The following function returns 0 if the brackets in the expression are well balanced, and a nonzero integer if not.

int balanced(char *str)
   int balance=0;  // Balance indicator.
   char c;  // Current character.
   int i=0;  // Character index.
   // Read characters.
   while((c=str[i++]) != '\0')
      // When '(' is read, increase indicator.
      if(c=='(') balance++;
      // When ')' is read, decrease indicator.
      if(c==')') balance--;
   return balance;
Ivan Jelic
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.