《C语言入门100例》-例题1-为什么a+b的运行结果不是3

问题遇到的现象和发生背景

为什么a+b的运行结果不是3

问题相关代码,请勿粘贴截图
#include <stdio.h>            // (1)
int main() {                  // (2)
    int a, b;                 // (3)
    scanf("%d %d", &a, &b);   // (4)
    printf("%d\n", a + b);    // (5)
    return 0;                 // (6)
}
运行结果及报错内容

1,2
-858993459
Press any key to continue

我的解答思路和尝试过的方法
我想要达到的结果

你scanf里两个%d之间是空格,输入的时候输入的是逗号,格式不符,那么后一个变量2其实并没有赋值给b
b是个随机数

这个输出结果是个随机数,可能是指针没有指向正确的数组位置,又或者输出的不是数值而是数组的地址