前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于C语言中一些需要的注意点(3)

关于C语言中一些需要的注意点(3)

作者头像
薛定谔方程难
发布2024-01-23 16:10:54
730
发布2024-01-23 16:10:54
举报
文章被收录于专栏:我的C语言我的C语言

1、若果说,自己总是会把=和= = 弄错的话,不如把变量放在右侧,就比如说*(if(3== x)和if(x= =3)),如果可以的话,还是建议第一种写法,因为就算是自己写错了,也可以通过系统自己来帮助我们找出错误,如果一不小心写成了if(x=3),在第二种的情况下,是很难找出来的。 2、在写判断的时候,我们最好不要连用操作符之类的,就比如说(i<j<k,i=3,j=4,k=2)*,如果说根据我们的判断,这句话应该是错误的,但是机器不会那么认为,机器是从左到右依次进行,在比较完i和j的大小之后,就会把前面的结果认为是1,然后再去和k进行比较。所以最后的结果却是真确的。为了防止这种情况的发生,我们可以把原来的代码改为**(i<j&&j<k)**. 3、布尔类型的头文件是<stdbool.h>,在用的时候是这样的。

代码语言:javascript
复制
_Bool flag=ture;
if(flag)
  printf("i like C\n");

也要注意的是,要大写。 4、signed是有正负号,而unsigned是只有0和正整数。一般来说signed是可以省略的,但是写了也不算是错误的,而unsigned也有自己的好处,因为在知道数值一定是正数的情况下,能有更多的数值。 5、全局变量是在*int main()之外并且之前的定义的数值,而局部变量就是在int main()*之内定义的。但是当局部变量和全局变量有同样相同的名字的时候,而又在int main之内用到的话,之前还刚好定义的局部变量,那局部变量的优先级是高于全局变量的。 6、内存三个区域是栈区(局部变量),堆区(动态内存),静态区(全局变量) 7、如果想要得到浮点数的结果,两个运算数必须至少一个是浮点数 例如

代码语言:javascript
复制
float x=6.0/4;

8、printf是默认右对齐,如果想要左对齐,可以printf(“%-5d”,n)。其中5的意思是限制最小的位置是存放5个,但是超过了也没有问题。 9、

代码语言:javascript
复制
scanf("%d",&x);
scanf("%f",&y);
//此时如果输入一个“-13.45e12#0”
scanf("%d%f",&x,&y);

此时,因为遇到了==.==,所以x,是-13.而y是,0.45e12。 10、scanf返回值是表示成功的读取的变量的个数,没有读取到的话时返回0,在读取到之前发生错误的话,会返回EOF(-1)。 11、除了%c之外,都会自动忽略起首的空白字符,如果想要强行跳过的话,可以写成

代码语言:javascript
复制
scanf(" %c",&a)//也就是在%c之前加上空格

12、如果为了避免,输入的时候,会有很多不同的方式,可以用这个来解决

代码语言:javascript
复制
scanf("%d%*c%d%*c%d",x,y,z);

这种情况,就是为了,防止在输入日期的时候,会造成不同。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档