C语言初学(六)

#include<stdio.h>
//nogood.c -- 有错误的程序
int main(void)
( //错误1应用花括号,而不是圆括号
    int n, int n2, int n3;//错误2使用太多int符号,正确为int n,2n,3n;或

                                                                                     int n;

                                                                                     int 2n;

                                                                                     int 3n;
        n = 5;
        n2 = n * n;
        n3 = n2 * n2;
        printf("n=%d,n squared=%d,n cubed=%d\n"n, n2, n3);
    return 0;
)


C语言语法错误是指:把有效的符号放错位置。

在调试期间可以快速查看出明显的错误,并且编译器会帮助你标明错误位置(编译器经常会比真正错误的地方滞后一行,认真查看)但是编译器也会出差,比如某个隐藏语句干预编译器判断。有时虽然报错狠多,但往往修复前几个就会解决问题,修改时尽量从上到下修改程序。



 #include<stdio.h>
//stillbad.c -- 修复语法错误的程序
int main(void)
{
    int n, n2, n3;
    n = 5;
    n2 = n * n;
    n3 = n2 * 2n;
        printf("n=%d,n squared=%d,n cubed=%d\n", n, n2, n3);
    return 0;
}


C语言语义错误是指:打印在屏幕上的意思与自己想象的不符,但是代码却没有错误,计算机可以识别

此程序最终打印的结果是:n=5,n2=25,n3=625。如果对立方熟悉的话,最后一个等数就是不对的,因为开发者对n3是要表达n的3次方,可是最终的结果是n的4次方。这时计算机识别代码正确,却与开发者的想法不一致=。这样需要学习一下系统的学习程序状态。

1.想象有3个盒子分别代表n,n2,n3,将第一个数值5赋给n,接着n与n相乘,等于数值25,将25赋予n2,这样用25*25(
n2与n2相乘)等于数值625,将625赋予n3。这样就可以看出计算机是用n2*n2来计算 ,而不是n2*n。这个办法虽然明朗,但是对于大数额的数字无法进行。

2.在关键点加入函数print()语句,以便查看变量值的变化与执行情况,从而确定能否运行,如果可以在删除此函数语句。

3.使用调试器,这个学习调试器即可。


学:C primer Plus(第六版)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值