单引号、双引号、int和char
首先说一下C语言中用单引号和双引号的不同(一直搞不清楚):
单引号代表的是一个整数,而这个整数的值是编译器所采用的字符集中的字符序列对应的值。所以一般'A'和ASCII中的65意义相同。
对于双引号定义的我们可以叫他“字符串”,那么对于单引号定义的我们叫他字符常量或者字符。
再说说int和char,现在感觉自己C语言中好多概念模糊啊,很多到用到的时候总是弄不清楚,基础不打好怎么向上进步呢?所以还是静下心来好好巩固一下基础吧。
int是有符号整型,大部分系统默认int是long int,占4个字节,也就是32比特,32位二进制数。short int 就是占两个字节了。
而char是字符型,占一个字节,可以用来表示一个字节的有符号整型数,但是用char定义整型数的时候要注意区分有符号和无符号,有符号char型的取值范围是(-128~+127),无符号整型数的取值范围是(0~255),定义的数一旦超过这个范围,即产生溢出,使数据出错,这是很严重的错误,千万记住。不同的编译器char表示的不同,我用的 cfree5里面,char就默认是有符号char(估计大部分也都是有符号的),最大只能定义127。也可以定义一个字符。但是定义的这个字符是以ASCII码值的8位二进制信息存放在内存里面的,不是一个字符存放在里面。那么再结合int来看,也就是说我们可以定义一个int类型的变量来存放四个字符。也最多只能存放4个单字符。但是这种方式编译器会警告。
所以有时候想要节省单片机的空间的话可以定义char类型,但是有两点需要注意,一是注意你需要的数是有符号还是无符号,二是注意这个数不要溢出。
之前我用单片机编程的时候。看人家用char我也用char。人家用unsigned char我也用,一点不清楚到底什么时候用这个?为什么用这个。今天总结完这些,开始明白了。
既然char和int本质都是整数,为什么还要作区分呢?
因为字符的个数相对较少,也就128个,因而char型变量的存储单元可以比int型变量的存储单元小。其实就是提出一种char型变量专门存储字符,方便程序员的数据选择。
下面简单讲一下字符串:
定义一个字符串常量的时候主要有两种方法:
#include "stdio.h" char ch[] = "abcdef";//用一维数组来存放字符串
char *p = "hello,world";//用一个指针指向字符串的开头地址 int main(){ printf("%s\n",ch);
printf("%s\n",p);
puts(ch);//使用puts函数输出字符串
puts(p); //puts输出字符串之后会自动换行
}
但是字符串数组就需要二维数组来存放了。其实字符串数组就是二维数组。
#include "stdio.h"
char a[][] = {//二维数组存放多个字符串
"hello",
"world",
"hi!",
};
int main(){
for(int i = ;i<;i++){
printf("%s\n",a[i]);
}
}
其实都是很基本的C语言知识,但是谁让当时自己没有认真学的呢?现在只能慢慢来弥补了。
单引号、双引号、int和char的更多相关文章
- 转发:【PHP】转义和过滤html单、双引号及HTML标签
一.单引号和双引号转义在PHP的数据存储过程中用得比较多,即往数据库里面存储数据时候需要注意转义单.双引号: 先说几个PHP函数: 1.addslashes — 使用反斜线引用(转义)字符串: 返回字 ...
- Linux中的元字符和转义符 单引号 硬引号 双引号 软引号
Linux中的元字符和转义符 单引号 硬引号 双引号 软引号 Linux就这个范儿 Linux就这个范儿 P182单引号:硬引号,所有元字符特殊意义都会关掉双引号:软引号,只允许出现特定元字符 ...
- PHP中单引号双引号使用原则
PHP中单引号双引号使用原则 1.PHP中尽量用单引号,HTML代码全部用双引号 2.在包含变量的时候,用双引号可以简化操作 3.复杂的情况下用大括号包起来 4 PHP引号还有一个用处 ...
- python中的单引号,双引号,三引号
转载自: http://blog.csdn.net/wanghai__/article/details/6285310 先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行 如: s1 ...
- Python 基础 (单、双引号区别) 不断补充
最近开始学习Python ,一些小细节的东西不是很理解,所以就记录一下,方便自己以后查看. 我的Python环境: Mac pro 10.12.3,Python3.5 ,Pycharm 多句题外话:公 ...
- python:单引号,双引号和三引号
python中字符串可以用单引号括起来,也可以用双引号,这两种方式是等价的需要表示一个字符串对象的话,单引号和双引号没有区别 为什么需要单引号和双引号同时支持,而一般都是”呢? 比如” 双引号’里面有 ...
- XML中& <> 单引号' 双引号 " 报错
由于xml中 这些字符是特殊字符,所以把&改成& 就行了 ,注意后面一定要带一个分号; < < 小于号> > ...
- python中单引号, 双引号,三引号的差异
1. 单引号和双引号用法都是一样的,但是如果字符串里有相同的字符时要使用\进行转义 举例:1) print 'hello'2) print "hello"1和2,结果都是hello ...
- HTML 如何显示英文单、双引号
// 过滤英文引号替换成中文引号 function pregstring($str){ return preg_replace('/"([^"]*)/','"${1 ...
- 【python】字符串变量赋值时字符串可用单或双引号
>>> name='萧峰' >>> print(name) 萧峰 >>> name="独孤求败" >>> p ...
随机推荐
- lua正则表达式如何匹配中文
function CheckChinese(s) local ret = {}; local f = '[%z\1-\127\194-\244][\128-\191]*'; local line, l ...
- scrapy 元素的相对xpath
- iOS 开发,工程中混合使用 ARC 和非ARC(转)
[前提知识] ARC:Automatic Reference Counting,自动引用计数 在开发 iOS 3 以及之前的版本的项目时我们要自己负责使用引用计数来管理内存,比如要手动 retain. ...
- ios开发之--调整UISearchBar的输入框的背景颜色
遍历UISearchBar的子视图,找到输入框坐在的view,添加背景颜色即可. 代码如下: UISearchBar *searchBar = [[UISearchBar alloc] initWit ...
- RFC文件
RFC(Request For Comments)-意即“请求评议”,包含了关于Internet的几乎所有重要的文字资料.如果你想成为网络方面的专家,那么RFC无疑是最重要也是最经常需要用到的资料之一 ...
- windows Redis绑定ip无效,Redis设置密码无效,Windows Redis 配置不生效, Windows Redis requirepass不生效
windows Redis绑定ip无效,Redis设置密码无效,Windows Redis 配置不生效, Windows Redis requirepass不生效 >>>>&g ...
- COM组件没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))
1.解决办法:在项目属性里设置“生成”=>“目标平台”为x86而不是默认的ANY CPU:
- Robot Framework进行web ui自动化测试,浏览器配置说明
转载请注明出处,谢谢: chrome浏览器: 1.从如下地址下载与本地浏览器版本号一致的chromedriver.exe驱动文件: http://chromedriver.storage.google ...
- 全屏加载loading显示的解决方法
step1:可以在网页里加一个div用来现实loading. <div id="loading"> <!--这里放你的loading时显示的动画或者文字--> ...
- SpringBoot(三)-- 整合FreeMarker模板
1.pom依赖 <!-- 引入freeMarker的依赖包. --> <dependency> <groupId>org.springframework.boot& ...