472,126 Members | 1,444 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,126 software developers and data experts.

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.
Jan 7 '09 #1
10 28522
1,275 Expert 1GB
Can you post the piece of code where u are getting the error?
Also which compiler u are using?

Jan 7 '09 #2
Expand|Select|Wrap|Line Numbers
  2. //Compile is turbo c++
  5. #include<iostream.h>
  6. #include<stdio.h>
  7. #include<conio.h>
  8. void main()
  9. {
  10. clrscr();
  11. int a,b;
  12. cout<<"Enter value of a and b\n";
  13. cin>>a>>b;
  14. int x=a-b;
  15. try
  16. {
  17. if(x!=0)
  18. {
  19. cout<<"Result(a/x)="<<a/x<<endl;
  20. }
  21. else
  22. {
  23. throw(x);
  24. }
  25. }
  26. catch(int i)
  27. {
  28. cout<<"Exption caughg:x="<<x<<endl;
  29. }
  30. cout<<"End";
  31. getch();
  32. }
Jan 7 '09 #3
13,262 8TB
Are you compiling as c or c++?
Is that the only error message you are getting?
Jan 7 '09 #4
then what I should do and how can i run my programme
Jan 7 '09 #5
9,065 Expert Mod 8TB
You should start by re-writing void main() as int main(). Main returns an int, always, anything else is undefined behaviour.
Jan 7 '09 #6
13,262 8TB
I don't think you started learning C++ by learning exceptions. How did you compile your hello world c++ program?
Jan 7 '09 #7
my problem is "undefined symbol try" how can I handle this
Jan 7 '09 #8
13,262 8TB
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<iostream.h> with #include<iostream>
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.
Jan 7 '09 #9
9,065 Expert Mod 8TB
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>.cpp
Jan 7 '09 #10
9,208 Expert Mod 8TB
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.
Jan 7 '09 #11

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

3 posts views Thread by Kenneth Kahl | last post: by
reply views Thread by =?Utf-8?B?TWF0ZXVzeiBSYWpjYQ==?= | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.