c语言空格影响编译吗,C语言的空格问题
对于C语言中,一般的理解是对于空格,我们可以随意输入,因为空格没啥大意义,但是事实上并非如此。
1、'\'空格的问题
'\' 字符可用于一些字符进行转移,当然也包括了 newline(enter),被转义的 newline 在逻辑上是对上一行的延续,可以用于连接长长的字符串。但是,如果在:\enter 和 \ enter 是完全不一样的,前者是正确的,而后者会出现错误。
(1) \enter
printf("hello world\
i love linux");
输出的结果为:hello world i love linux,
'\'之后马上接enter(enter 不可见),也就是说 '\'之后的空格被转义为换行,所以以换行的方式打印出结果。
(2)\ enter
printf("hello world\
i love linux");
报错,'\' 之后接的是空格,空格后面没有被转义,所以就被认为是一样,就会出现:缺少换行符的错误。
对于这种错误,是非常难去查找的,因为对于一个 enter 来说,是完全不可见的。
对于此类的问题,在需要对长字符串进行换行的时候,\ 之后就直接 enter。
2、没有空格的问题
一切的祸害都是因为空格,那干脆空格都不要了吧,不行,没有空格反而带出来了其他的问题。
z = y+++++x;
对于此类的问题,完全没有空格,不仅是带来了不变分析代码的麻烦,更会带来报错,因为编译器将上面解析为:z = y++++ + x;。所以上面的代码添加空格为:
z = y++ + ++x;
这样就是正确了。
3、/* 带来的问题
z = *p/*q;
执行上面的代码,本意是执行 p 所指的内与与 q 所指的内容进行取整运算的,但是报错了,原因是编译器将:'/*' 理解为注释了。所以添加空格为:
z = *p / *q;
这就 OK 了。当然括号也是比较好的。
c语言空格影响编译吗,C语言的空格问题相关推荐
- C语言二级必须编译吗,c语言是计算机二级吗
c语言是计算机二级吗 C语言是一门面向过程的.抽象化的通用程序设计语言,广泛应用于底层开发.C语言能以简易的方式编译.处理低级存储器.接下来由小编为大家整理出c语言是计算机二级吗,希望能够帮助到大家! ...
- c语言精髓之编译过程,C语言精髓知识点
1.字节数: Char:1个字节 Unsigned:1个字节 Short:2/4个字节 Int:2/4个字节 Unsigned int:2/4个字节 编译器在32位一下: Long:4个字节 Unsi ...
- 易语言linux静态编译失败,易语言静态编译出现错误求解决
静态编译程序的时候出现这个... 开始静态链接... LIBC.lib(crt0dat.obj) : error LNK2005: __cinit already defined in libcmt. ...
- c语言注释参与程序设计的编译,提高C语言程序设计教学的有益探索
摘要:在很多学校中,C语言的教学在学校的整个计算机编程语言的教学中占有很大比重,越来越多的学校认识到C语言的程序设计在整个编程中的所扮演的基础性的角色. 关键词:C语言:教学:程序设计 中图分类号:G ...
- c语言只需编译 不需连接,C语言程序设计-中国大学mooc
C语言程序设计-中国大学mooc http://carrottt.blog.bokee.net 2020-6-9 转载自网课答案 (www.daanplus.com) : 完整答案请关注公众号[ ...
- 大前端开发者需要了解的基础编译原理和语言知识
转自:https://yq.aliyun.com/articles/180879 在我刚刚进入大学,从零开始学习 C 语言的时候,我就不断的从学长的口中听到一个又一个语言,比如 C++.Java.Py ...
- [GO语言基础] 二.编译运行、语法规范、注释转义及API标准库知识普及
作为网络安全初学者,会遇到采用Go语言开发的恶意样本.因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识:另一方面是分享与读者,希望大家一起进步.前文介绍了什么是GO语言 ...
- c语言作业系统输出超限,C语言网Online Judge系统支持语言和编译说明
Online Judge系统支持语言和编译情况: 语言 编译器 语言版本 编译参数 C gcc 4.6.3 C99 gcc Main.c -o Main -Wall -lm –static -std= ...
- makefile:带你了解一种常用于GNU gcc编译的工具语言
摘要:该文章主要介绍makefile,一种常用语GNU gcc编译的工具语言,同时LiteOS也是利用该文件对工程项目进行make构建生成执行文件的. LiteOS源码中使用makefile进行文件的 ...
最新文章
- 这个AI学院取名黄埔,30%学生都是CTO/技术总监,没有落地成果不许毕业
- 19、Cocos2dx 3.0游戏开发找小三之Action:流动的水没有形状,漂流的风找不到踪迹、、、...
- Asp.net,C# 纯数字加密解密字符串
- jquery on()事件
- WEKA The workbench for machine learning
- galera mysql cluster
- Keras-11 GAN MNIST
- GET 和 POST的区别(转载)
- Java网络连接之HttpURLConnection、HttpsURLConnection
- 城市智能公交管理系统方案
- 视频教程-Three.Js (WebGL ThreeJs) 网页3D实战视频教程-其他
- 大数据平台之数据存储
- c语言程序设计网课作业答案,知到C语言程序设计基础网课答案
- 全网最详细官网一键换肤教程
- python--手机步数----微信运动--支付宝运动等步数刷新
- 计算机毕业论文基于Python实现的学生求职招聘兼职平台
- 虚拟机打不开是黑屏状态
- 技术一般的程序员找工作,如今真的一年比一年难...
- 阳光学车隐私政策URL
- 5G加速,为什么说紫光股份是运营商市场的大赢家?