0和\0的区别是什么?

所有字符串和字符数组都需要以0或\0结束吗?
如果程序中本来有0会不会提前结束造成错误?
0和\0在字符数组中都占一位吗?

字符'\0'的ascll码是0
字符'0'的ascll码是48

\0是字符串结束标志
0是数字