Not meaning to be rude, but have you actually tried finding this out for yourself instead of just asking? These are the most FUNDAMENTAL points of software development/testing, and you can find out the answer for yourself in 2 seconds by using google or similar. Personally I am a firm believer in doing your own research...if you put the effort in, you are far more likely to remember something than if you are just given the answer.
Not so, Katie,
there may be a definition applied by a few companies, and some one who is trying to unite the world by their definition, but there is no standard. The difference may also be explained in a specific certification program, but the same rules apply as with almost all test terminology, what counts is how your company decides to define these terms. In many, I won't say most, because I'm not sure, but in many companies the terms are interchangeable. They all mean that the application under test does not perform as it should based on the original requirements.
In fact in some of the tracking systems for defects the defect is called an SCR or Software Change Report, meaning that a change is needed to make the software either work as it was designed or work in a new way so as to implement an enhancement.
Most Defect tracking systems are just that, a "DEFECT" tracking system, not a "BUG" tracking system or an "ERROR" tracking system.