c语言求字符串转换为十进制整数

我的第二个代码没办法正确运行,第一个是网上找的可以用,我想请问为什么我的第二个哪里错误了,然后为什么第一个的while循环最后还要用一个getchar

img

img

修改如下,供参考:

img

报错提示呢