exception handing: error message "undefined symbol try . . "

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • arvindkuk
    New Member
    • Jan 2009
    • 4

    exception handing: error message "undefined symbol try . . "

    how to work with expection handing in which when i am using try block then the error message coming that "undefined symbol try" why it is so, please solve my problem.
  • gpraghuram
    Recognized Expert Top Contributor
    • Mar 2007
    • 1275

    #2
    Can you post the piece of code where u are getting the error?
    Also which compiler u are using?

    Raghu

    Comment

    • arvindkuk
      New Member
      • Jan 2009
      • 4

      #3
      c++

      Code:
       
      //Compile is turbo c++
       
       
      #include<iostream.h>
      #include<stdio.h>
      #include<conio.h>
      void main()
      {
      clrscr();
      int a,b;
      cout<<"Enter value of a and b\n";
      cin>>a>>b;
      int x=a-b;
      try
      {
      if(x!=0)
      {
      cout<<"Result(a/x)="<<a/x<<endl;
      }
      else
      {
      throw(x);
      }
      }
      catch(int i)
      {
      cout<<"Exption caughg:x="<<x<<endl;
      }
      cout<<"End";
      getch();
      }

      Comment

      • r035198x
        MVP
        • Sep 2006
        • 13225

        #4
        Are you compiling as c or c++?
        Is that the only error message you are getting?

        Comment

        • arvindkuk
          New Member
          • Jan 2009
          • 4

          #5
          then what I should do and how can i run my programme

          Comment

          • Banfa
            Recognized Expert Expert
            • Feb 2006
            • 9067

            #6
            You should start by re-writing void main() as int main(). Main returns an int, always, anything else is undefined behaviour.

            Comment

            • r035198x
              MVP
              • Sep 2006
              • 13225

              #7
              Originally posted by arvindkuk
              then what I should do and how can i run my programme
              I don't think you started learning C++ by learning exceptions. How did you compile your hello world c++ program?

              Comment

              • arvindkuk
                New Member
                • Jan 2009
                • 4

                #8
                my problem is "undefined symbol try" how can I handle this

                Comment

                • r035198x
                  MVP
                  • Sep 2006
                  • 13225

                  #9
                  Your problem is not being sure which language you are coding in. You want to use try/catch exception handling so you must use c++ not c.
                  For c++ you need to change these things

                  1.) replace #include<iostre am.h> with #include<iostre am>
                  2.) Remove all other includes
                  3.) add using namespace std; before the definition of main
                  4.) Make main return an int not void. void is wrong even in c
                  5.) Remove lines with clrscr(); and getch(); in your code
                  6.) Compile the file as a c++ file not as a c source file.

                  Comment

                  • Banfa
                    Recognized Expert Expert
                    • Feb 2006
                    • 9067

                    #10
                    Something obvious that has not been mentioned yet is what is the name of your file?

                    if it is <something>.c then the compiler will almost certainly be compiling it as C code it needs to be <something>.c pp

                    Comment

                    • weaknessforcats
                      Recognized Expert Expert
                      • Mar 2007
                      • 9214

                      #11
                      Also, keep in mind that exception handling is often turned off in most C++ compilers by default. You have have to enable it by setting a compiler switch.

                      That would explain your indefined symbol.

                      Comment

                      Working...