An Audit is a security focused review of code, it is used to discover bugs, vulnerabilities and potential of future failures. But the key thing to remember is that an audit is not a guarantee of complete safety of the smart contract; instead, it is a best effort approach to find bugs and security issues.