![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
qq_41260042
这个作者很懒,什么都没留下…
展开
-
不安全的scanf
在学习C语言中,使用得最多的输入输出便是scanf和printf,可惜在vs2017/2019等一些版本提示函数不安全:严重性 代码 说明 项目 文件 行 禁止显示状态错误 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for deta原创 2020-06-02 22:14:44 · 401 阅读 · 0 评论 -
数组名与指针1
数组名和指针非常相似,能用&和*运算,但也有很大的不同,两者不能混为一谈。 数组名是地址常量,不用存到储存空间里,所以对数组名取地址不能用取一个储存空间的地址来理解(数组名根本不在什么储存空间里存着)。 指针是地址变量,与其他的变量一样,定义的时候就会为它分配一个储存空间(4字节),不同的指针类型在指针自加时就会让指针往后移不同的位数。比如int a[5],*p1=&a[0];char *p原创 2018-01-05 01:24:54 · 148 阅读 · 0 评论 -
输出空格控制
输出空格控制在oj上,有很多题目往往需要输出多个数字,每2个数字中间输出1个空格,行尾不需要空格。 这里说说我常用的方法—设立标志变量。 不管它输出多少个数字,我们都可以这样看待:除了每行第一个数,后面每个数字前面都跟着一个空格。所以我们需要一个变量(flag)来判断是否输出的是这行的第一个数字。 首先在所以输出前定义一个变量并初始化为0,int flag=0; 然后比如说输出数字的原创 2018-01-05 01:32:51 · 741 阅读 · 0 评论 -
c语言const与指针
const与指针 int a; const int *p1=&a; int const *p2=&a; int * const p3=&a; p3从此只能指向a; p1和p2的定义是一样的意思,能再指向别的地方,a=2;a直接赋值也是可以的,被限制的是*p1,*p1=2;是错误的,也就是这个指针失去了间接改变指向的变量的值的能力。原创 2018-01-05 01:34:54 · 134 阅读 · 0 评论 -
数组名与指针2
指针与数组名2 1,方括号运算符[ ]。 在定义数组的时候就不说了,就是开辟一片连续的空间,数组名是首地址,是常量。 在调用数组元素时用的是方括号,例如int a[5]; a[1]=2; 在a[1]=2;这个语句的实质是(a+1)=2; 所以方括号的作用是将前面的和括起来的相加再做间访(间接访问)操作,因此a[1]=2;等价与1[a]=2;不过不建议用后者。知道了方括号的实原创 2018-01-05 01:36:25 · 184 阅读 · 0 评论