那是因为压根就不需要你这个返回值main 函数中定义的arr1 是个数组,同时它时个变量。这个变量的首地址,在你整个运行过程中,并没有发生改变,只不过通过 my_strcat() 进行了 ++所以,调用完毕之后,printf 还是 arr1 的地址,所以,不会有任何问题
函数的调用跟是否调用返回值关系不大如果定义返回值类型变量接收则可以接收到有返回值函数的返回值,同时不定义返回值类型变量也不影响函数的调用和执行一般是如果需要用到这个返回值的时候才定义相关变量来接收的。