精华内容
下载资源
问答
  • C语言易错点

    2018-12-10 23:30:00
    C语言易错点 1.每个C语言程序中main函数是有且只有一个的。 2.算法可以没有输入,但必须要有输出。 3.在函数中不可以再定义函数。 4.break可用于循环结构和switch语句。 5.break和continue的区别在于前者是跳出...

    C语言易错点

    1.每个C语言程序中main函数是有且只有一个的。

    2.算法可以没有输入,但必须要有输出。

    3.在函数中不可以再定义函数。

    4.break可用于循环结构和switch语句。

    5.break和continue的区别在于前者是跳出循环,后者是结束本次循环。

    6.逗号的运算符的级别最低。

    7.C语言对字母的大小写是区分明确的。

    8.‘0’的ASCII数值为48,‘a’的ASCII的数值为97,‘A’的ASCII数值为65

    9.字符是可以进行算术运算的,如‘0’- 48 = 0

    10.整型一般是两个字节,字符型是一个字节,双精度一般是四个字节。

    11.求余数运算的要求运算对象只能为整型。除法运算符两边都为整型时,运算结果也为整型,即舍去小数部分。

    12. =为赋值运算符,而==才是等于。

    13.用(int)a可强制转换类型。

    14.++在前先加后用,++在后先用后加。

    15.%d对应整型,%c对应字符,%f对应单精度,%ld对应long int,%lf对应double

    16.scanf输入的格式中的&不能忘。

    17.char a = getchar()是没有参数的,从键盘得到你输入的一个字符(包括回车、空格等字符)给变量a

    18.putchar(y)把字符y输出到屏幕中。

    19.else是与最接近的if且没有else的相组合的。

    20.for循环中必须是两个分号。Do-while中最后while后有分号。

    (持续更新)

    转载于:https://www.cnblogs.com/zw431387/p/10099953.html

    展开全文
  • C语言易错点摘要.pdf

    2021-06-17 22:47:29
    C语言易错点摘要
  • c语言易错点

    2020-05-07 21:30:26
    1.feof 2.strncat 3.*a[10] 4.const a = 10; a = 9 5.队列,栈空间 6.信号量回调函数 7.strncpy带不带\0 8.if else匹配 9.unsigned long long -1u

    1.feof
    2.strncat
    3.c和指针--数组

    多维数组的第一维指向的是一个数组

    数组名的值是一个指针常量。取一个数组名的地址所产生的是一个指向数组的指针(值还是第一个元素的地址,但是步长变成了一整个数组,因为他是一个指向数组的指针),而不是指向某个指针常量值的指针。

    间接访问和下标引用完全相同,除了优先级(下标引用>间接访问)。

    2[array] = array[2] 惊呆了!!!

    int *p[10] 这是指针数组,首先p结合[]他是个数组,然后对这个数组每个元素是个指向int的指针。

    int (*p)[10] 这是指向数组的指针,首先结合(*p),这个指针指向一个数组int [10]。
    4.const a = 10;
    a = 9
    5.队列,栈空间
    6.信号量回调函数
    7.strncpy带不带\0
    8.if else匹配
    9.unsigned long long -1u

    10.结构体中的bit

    11.单多循环链表实现队列

    12.c和指针--数据类型

    八进制前面是0(那和普通的前面带0得十进制数有什么区别)

    局部变量与形参同名时用局部变量。

    链接属性包括external(外部)、internal(内部)、none(无),以源文件为基本单位。

    静态变量再程序执行期间一直存在。静态函数只在定义源文件中可见。

    在堆栈上分配存储可以有效的实现递归。

    13. c和指针-字符串

    strbcpy除非strlen(src)<len,否则不会自动加NULL。

    但是strncat就是会向目标字符串赋值n个字符然后加个NULL,不管目的空间够不够。

    strchr/strrchr  查找字符串中字符第一次/最后一次出现的位置

    strstr(s1, s2)如果s2 == NULL,返回s1.

    strtok 第一次传一个正常的字符串,第二次传NULL就会从上次保存的位置继续往下查找。

    strerror 返回描述错误的字符串的指针

    isdigit:0-9、isxdigit;a-f或A-F、islower、isupper、isalpha:大小写字母、isalnum:数字或字母、ispunct:除了数字和字母。

    tolower、toupper。

    内存操作(不受字符串的NULL限制):

    memcpy和strncpy不同的是遇到NULL不会停止。

     

     

     

    展开全文
  • C语言易错点总结

    2019-11-26 12:43:40
    C语言易错点总结 1.sizeof是关键字而非函数。 2.定义变量时,不能同时对多个变量连续赋初始值。 eg:int m=n=1;//错误 3.scanf语句: "%c"将读入空白符," %c"能忽略空白符。 "%s"遇到空白符读入结束。 ps...
                          C语言易错点总结
    

    1.sizeof是关键字而非函数。
    2.定义变量时,不能同时对多个变量连续赋初始值。
    eg:int m=n=1;//错误
    3.scanf语句:
    “%c"将读入空白符,” %c"能忽略空白符。
    "%s"遇到空白符读入结束。
    ps:要想将有空格的字符串存入char型数组中,可使用gets(str) 或fgets(str,size,stdin)从标准输入设备中读入。但不建议使 用危险的gets(str),因为它无法限制输入字符串的长度,容易导致缓冲区溢出。两者的读入有所区别,fgets()读入换行符会将换行符作为字符串的一部分。
    scanf语句中没有精度修饰符。
    scanf语句输入数值时,读入结束的几种情况:
    1)遇到空白符
    2)达到域宽
    3)遇到非法输入
    scanf语句的返回值为读入的项数。未能成功读入返回0,调用函数失败或读到文件结束返回EOF(值为-1的宏)。
    4.小心&&与||的短路特性。
    eg:

             int a=1;
             int b=2;
             if(a<0&&b++>2)//b++不会被执行
             a+=2;
    

    5.空指针不能解引用。
    6.函数的返回值可以是除了数组之外的任何类型。
    7.数组名是一个地址,不能改变。
    eg:

                     int a[3]={1,2,3};
                     int *p=a;
                     printf("%d",*(a+1));//合法
                     printf("%d",*(++a));//不合法
                     printf("%d",*p);//合法
                     printf("%d",*(++p));//合法
    

    8.共用体不能进行比较操作,也不能作为函数参数。
    9.局部变量可以屏蔽全局变量(就近原则)。
    10.同一个外部变量名在两个不同的文件中被声明为不同的类型,会导致C程序失效。
    11.使用宏定义完成类似函数的功能时,要注意括号的使用。
    eg:#define cube(a) a*a*a//不好
    当函数中调用cube(a+b)时,计算的将是(a+(b*a)+(b*a)+b)
    值。
    改进:#define cube ((a)*(a)*(a))

    展开全文
  • 概念常考到的: 1、编译预处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、每个C语言程序中main函数是有且只有一个。 3、在函数中不可以再定义函数。 4...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

    总体上必须清楚的:

    1)程序结构是三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch)

    2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

    3)计算机的数据在电脑中保存是以 二进制的形式. 数据存放的位置就是 他的地址.

    4)bit是位 是指为0 或者1。 byte 是指字节, 一个字节 = 八个位.

    5)一定要记住 二进制 如何划成 十进制。

    概念常考到的:

    1、编译预处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

    2、每个C语言程序中main函数是有且只有一个。

    3、在函数中不可以再定义函数。

    4、算法的是一定要有输出的,他可以没有输入。

    5、break可用于循环结构和switch语句。

    6、逗号运算符的级别最低。

    第一章

    1)合法的用户标识符考查:

    合法的要求是由字母,数字,下划线组成。有其它元素就错了。

    并且第一个必须为字母或则是下划线。第一个为数字就错了。

    关键字不可以作为用户标识符号。main   define   scanf   printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。

    2)实型数据的合法形式:

    2.333e-1 就是合法的,且数据是2.333×10-1。

    考试口诀:e前e后必有数,e后必为整数。.

    3)字符数据的合法形式::

    '1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

    '0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。

    4) 整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:

    考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。

    5)转义字符的考查:

    在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x必须存在。

    在程序中 int a = 06d, 是一个八进制的形式。

    在转义字符中,’\x6d’ 才是合法的,0不能写,并且x是小写。

    ‘\141’ 是合法的, 0是不能写的。

    ‘\108’是非法的,因为不可以出现8。

    6)算术运算符号的优先级别:

    同级别的有的是从左到右,有的是从右到左。

    7)强制类型转换:

    一定是 (int)a 不是   int(a),注意类型上一定有括号的。

    注意(int)(a+b)和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b。

    8)表达式的考查:

    是表达式就一定有数值。

    赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。

    自加、自减表达式:假设a=5,++a(是为6), a++(为5);

    运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这

    个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,

    再放到变量a中。 进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。

    考试口诀:++在前先加后用,++在后先用后加。

    逗号表达式:优先级别最低 ;表达式的数值逗号最右边的那个表达式的数值。

    (2,3,4)的表达式的数值就是4。

    9)位运算的考查:

    会有一到二题考试题目。

    总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。

    展开全文
  • C语言易错点经典分析

    2012-03-21 17:06:51
    详细讲解了C语言中易错易混,能够让你在开发中避免很多错误,同时也能考察自己的C语言水平的必备试题,更是面试过程中不可或缺的面试题目
  • C语言易错点整理

    2021-04-15 10:47:37
    大一在学C语言时整理的笔记。到现在,好长时间没看了,复习回顾一下。 一. float(0.01) double(0.001) 两者的区别:double精度高 二. double s=1.34; printf("%7.2f\n",s); //右对齐 printf("%-7.2f\n",s); //左...
  • C语言易错点:字符串的连接标签:C语言 字符串by 小威威利用字符数组对字符串的连接,有一点需要注意,不要忘了最后加’\0’,不要忘了在最后加’\0’,不要忘了在最后加’\0’。还有一个,字符数组的长度要记得包含...
  • C语言易错点笔记

    2019-12-30 10:21:32
    2.在C语言中,数组参数是以引用形式传递的,也就是地址调用,而标量和常量视按值传递的。在函数中修改标量参数都会在函数返回时丢失,而数组则不会。换个角度理解:所有传递给函数的参数都是按值传递的。 3.常用 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,368
精华内容 1,347
关键字:

c语言易错点

c语言 订阅