为初学者提供快速代码建议

sam*_*sam -7 c c++ pic

我是初学者,我想知道这段代码有什么问题.我想计算在portA中按下按钮的次数.然后使用portC中的LEDS显示此值.谢谢

Mik*_*our 5

如果要将其用作if(for或任何)语句的主体,则需要围绕多语句块的大括号:

else if (PORTA.RA2==1) {
    count = count+1;
    PORTC = count;
}
Run Code Online (Sandbox Code Playgroud)

否则只有第一个陈述是有条件的; 因此PORTC = count;,无论if测试结果如何,您的代码每次都会执行.

我喜欢在所有这些块周围放置括号,即使只有一个语句,所以如果我稍后添加更多语句,我也不能忘记添加它们.

此外,main必须返回intvoid,你应该多加小心格式化你的代码以匹配其逻辑结构.

更新:此外,您永远不会初始化count,因此它具有任意浮点值.你想要一个小整数类型,因为它只应该取0到16之间的整数值,你需要初始化它:

char count = 0;
Run Code Online (Sandbox Code Playgroud)