scanf和指针问题

时间:2018-10-06 18:23:44

标签: c pointers scanf

我正在研究指针,并在此代码中,尝试使用指针在内存中存储10个int值和10个char值,然后,对40岁以上的每个年龄段和每个Male(M)进行计数。

但是,在编译代码时,他只是“跳”了应该询问char值的部分。我在这里想念什么?

class GameScene: SKScene {

     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {

        var atlas:SKTextureAtlas? = SKTextureAtlas(named: "Title")

        atlas?.preload {

            atlas = nil

            print("Loaded")

        }

    }

}

1 个答案:

答案 0 :(得分:0)

使用int读取scanf("%d", &pAge[i]);后,换行('\n')仍在stdin的缓冲区中。下一个scanf("%c", &pGender[i]);将读取'\n',而不会给您机会进行实际输入。

使用

scanf(" %c", &pGender[i]);
       ^

要阅读一个字符,但要跳过之前的所有白色字符。

还没有初始化变量nBiggernMale