zoukankan      html  css  js  c++  java
  • C语言运行错误

    上周学校了C基础,除了之前的C基础部分要点的概述外,我在学习中碰到了不少问题,尤其是不能运行和思维逻辑跟不上时最大的苦恼,所以就先写写这篇C语言的常见错误。

    C语言对于我这种初学者来说,运行报错很常见,可报错之后,又不一定看得懂,因为报错方式是英文。所以,问题一旦出现就要一个一个瞅对错,这样做不仅效率不高,而且眼一花,说不定就得从头开始。可是英文又不能临时抱佛脚,毕竟这不是一朝一夕的事,所以在几天做题的练习下,我发现了一些,我的经常出现的运行错误,这就小小的分享下。

    1、首当其冲就是输入scanf时,忘记"&"。例:

    int c,d;

    scanf("%d,%d",c,d);

    虽然这样它依然可以运行,但是它没法输出地址值。

    2、忘加分号或加错逗号而运行报错。例:

    printf("%d,%d,"c,d);

    printf("%d,%d",c,d)

    这种情况,一般程序都会报错,一般也好查看。

    3、又是scanf,为什么又说是它呢,因为刚学的时候,大家应该都知道有“\n”这个还行符号,大家也应该都会忘printf里面加“\n”这个符号换行。所以,就自然而然的开始在scanf里面加这个符号。这样输入后,程序不会运行,可是我们却会一直找不到,因为我们不了解,原来“\n”也不是哪都能加的。

    4、误把“=”当做运算符。例:

    if(x=3)

    大概是受小时候的影响,我们经常在知道“=”是赋值的意思时却依然用它,我常想,这是潜移默化还是狗改不了吃屎呢?

    5、又是分号,还是那句话,我们总是画蛇添足的,不该加的我们都勇往直前、义无反顾的加。例:

    if(a>b);{

    temp=a;    

    a=b;

    b=temp; 

    }

    看出来在哪加了吗?说真的,开始学的时候,我总是情不自禁的给它加上。而且,还恶性循环的一直改东改西就是不改它。

    6、switch后面不跟break,switch case在执行时,首先根据switch表达式,找到满足条件的case分支,执行。在执行过程中,如果遇到break,则跳出switch语句,否则,将继续一级一级往下执行,直到遇到break或结束。而不加break就会有多个执行结果,所以能怪不知是哪出了错吗?谁叫我们随心所欲地加或减呢。

    7、括号不匹配,不管是循环嵌套还是判断嵌套,因为有许多的括号要打,而有时呢,就忘了右边的括号。这让我想起我一个一个数括号的经历……唉!

    这是我常出错的地方,有借鉴的可以借鉴,不可借鉴的可以再添……

  • 相关阅读:
    BestCoder17 1001.Chessboard(hdu 5100) 解题报告
    codeforces 485A.Factory 解题报告
    codeforces 485B Valuable Resources 解题报告
    BestCoder16 1002.Revenge of LIS II(hdu 5087) 解题报告
    codeforces 374A Inna and Pink Pony 解题报告
    codeforces 483B Friends and Presents 解题报告
    BestCoder15 1002.Instruction(hdu 5083) 解题报告
    codeforces 483C.Diverse Permutation 解题报告
    codeforces 483A. Counterexample 解题报告
    NSArray中地内存管理 理解
  • 原文地址:https://www.cnblogs.com/syqy/p/3763409.html
Copyright © 2011-2022 走看看