单项选择题

若有如下程序:
sub(int a,int b,int*z)
*z=a+b;
return;

main()
int a=1,b=2,C=3,d,e;
sub(a,b,&d);
sub(C,d,&e);
printf("%d",e);

则程序运行后的输出结果是( )。

A.3
B.4
C.5
D.6