反应物为锌、盐酸和As2O3,反应后生成砷化氢、氯化锌,As的化合价降低,Zn的化合价升高,则A.反应前后HCl中H和Cl的化合价都没有变化,盐酸只起到酸的作用,故A错误;B.As的化合价降低,则砒霜做氧化剂,故B正确;C.Zn的化合价升高,作还原剂,盐酸只起到酸的作用,化合价没有变化,故C错误;D.反应前后HCl中H和Cl的化合价都没有变化,盐酸只起到酸的作用,故D错误.故选B.