no - return value is application defined. your Helloworld program could decide just to return return value of printf
in this case 0 will be failure, while non-negative value indicating success...
But more general situation is when program indicates successful end with 0 and error with negative value... in most cases it will be specified in the man pages for tools where the return value could be of interest for the caller