C/C++查漏补缺(常更)
一、#define宏定义
如下程序段,则输出结果为:
#define MAX 12
int main(){
cout << "20\0MAX019" << endl;
}
输出结果:20 , 知识点:#define定义 的宏常量不替换程序中""里的东西
https://www.cnblogs.com/bytebee/p/8205450.html
二、const常量指针与指针常量
定义一个int常量
const int a = 10;
int const a = 10;
这两种方法都是合法的,意义相同。当const用于指针呢?
int * const p = &a; // 指针常量 p = NULL; 非法
int const *p = &a; // 常量指针 *p = 20; 非法
const int *p = &a; // 常量指针
若想定义一个指针,既不能改变其值,也不能改变其指向的值,
const int * const p = &a;
下面这个语句看着有点怪怪的
int const * const p = &a;
其实它实现了和上一条定义相同的效果
三、printf()函数
如下输出语句是否正确
char *s = "parliament";
printf(s); // ok, 输出 parliament
printf(s+1); // ok, 输出arliament
printf("c++"+1); // ok,输出++
(对于输出结果不明白的参见第四条)
初学c时,接触的用printf()输出字符串的方式就是printf("%s", 字符串);第一次看到上面的输出语句觉得是语法错误,直到前天(2019.11.18)看到87年一道键盘字母对应的题目题解后才返回来又看了一下,没想到是正确的。
该题链接
https://www.cnblogs.com/songlee/p/5738125.html
四、字符串常量
在之前的文章里提到过字符串常量代表的其实是一个地址,是字符串首元素的地址,今天再把它细说一下
比如字符串常量"string",看着是一个字符串,其实本质是一个const char*的地址,是一个地址常量
"string"+1则代表将该地址移动 1*char个字节数,即移动到第二个元素't'的地址,此时输出结果为 "tring"
"string"[1]呢?相当于*("string"+1),取第二个元素的值,即't'
1["string"]呢?同上啦,和数组下标用法是相同的
C/C++查漏补缺(常更)的更多相关文章
- Java基础查漏补缺(2)
Java基础查漏补缺(2) apache和spring都提供了BeanUtils的深度拷贝工具包 +=具有隐形的强制转换 object类的equals()方法容易抛出空指针异常 String a=nu ...
- Entity Framework 查漏补缺 (一)
明确EF建立的数据库和对象之间的关系 EF也是一种ORM技术框架, 将对象模型和关系型数据库的数据结构对应起来,开发人员不在利用sql去操作数据相关结构和数据.以下是EF建立的数据库和对象之间关系 关 ...
- 20165223 week1测试查漏补缺
week1查漏补缺 经过第一周的学习后,在蓝墨云班课上做了一套31道题的小测试,下面是对测试题中遇到的错误的分析和总结: 一.背记题 不属于Java后继技术的是? Ptyhon Java后继技术有? ...
- 今天開始慢下脚步,開始ios技术知识的查漏补缺。
从2014.6.30 開始工作算起. 如今已经是第416天了.不止不觉.时间过的真快. 通过对之前工作的总结.发现,你的知识面.会决定你面对问题时的态度.过程和结果. 简单来讲.知识面拓展了,你才干有 ...
- Django 查漏补缺
Django 查漏补缺 Django 内容回顾: 一. Http 请求本质: 网络传输,运用socket Django程序: socket 服务端 a. 服务端监听IP和端口 b. 浏览器发送请求 ...
- Mysql查漏补缺
Mysql查漏补缺 存储引擎 数据库使用存储引擎来进行CRUD的操作,不同的存储引擎提供了不同的功能.Mysql支持的存储引擎有InnoDB.MyISAM.Memory.Merge.Archive.F ...
- 查漏补缺·补丁计划
趁着神志清醒赶紧写一下. 多次考试暴露出各种问题.新的知识点先不去搞了,最近多做一些不擅长的类型的题查漏补缺一下吧. 唔,首先是比较考验思维的类型,我智商太低又刷题少不会什么套路,只能最近赶紧赶一下进 ...
- CSS基础面试题,快来查漏补缺
本文大部分问题来源:50道CSS基础面试题(附答案),外加一些面经. 我对问题进行了分类整理,并给了自己的回答.大部分知识点都有专题链接(来源于本博客相关文章),用于自己前端CSS部分的查漏补缺.虽作 ...
- Flutter查漏补缺1
Flutter 基础知识查漏补缺 Hot reload原理 热重载分为这几个步骤 扫描项目改动:检查是否有新增,删除或者改动,直到找到上次编译后发生改变的dart代码 增量编译:找到改变的dart代码 ...
- Go语言知识查漏补缺|基本数据类型
前言 学习Go半年之后,我决定重新开始阅读<The Go Programing Language>,对书中涉及重点进行全面讲解,这是Go语言知识查漏补缺系列的文章第二篇,前一篇文章则对应书 ...
随机推荐
- MongoDB-3.2 oplog删除策略优化
MongoDB oplog是一个capped collection,创建capped collection时,createCollection可以设置size(最大字节数)和max(最大文档数)的参数 ...
- springboot使用rabbitmq-Topic模式,亲自实测能用!!!
0.项目目录截图 ===================================================================== springboot的版本: <gr ...
- 搭建自己的博客(八):使用fontawesome框架来添加图标以及美化详情页
在网页中有时候会使用到图标,自己弄图标有些麻烦所以就使用了fontawesome框架. 官网: 下载地址 我使用的fontawesome版本是5.5.0版本 1.先上变化的部分
- 爬虫(七):爬取猫眼电影top100
一:分析网站 目标站和目标数据目标地址:http://maoyan.com/board/4?offset=20目标数据:目标地址页面的电影列表,包括电影名,电影图片,主演,上映日期以及评分. 二:上代 ...
- Python怎么测试异步接口
当业务处理比较耗时时, 接口一般会采用异步处理的方式, 这种异步处理的方式又叫Future模式. 一般流程 当你请求一个异步接口,接口会立刻返回你一个结果告诉你已经开始处理,结果中一般会包含一个任务i ...
- Mac佳软之Understand---Android源码分析阅读神器
下载地址, 密码:gebp 供大家体验, 请大家支持正版!!! https://www.jianshu.com/p/06f25d9131de
- 修改rabbitmq web-UI端口号
一.拷贝配置文件 [root@test03 ~]# cd /usr/share/doc/rabbitmq-server-3.6.15/ [root@test03 rabbitmq-server-3.6 ...
- CF1174C Ehab and a Special Coloring Problem(数论)
做法 与\(x\)互质的数填不同的数,把有向关系表示出来,发现边数是不能承受的 反过来想,成倍数关系填相同的数,把这些数想象成一条链,而这条链开始的数一定是质数,\(\sum\limits_{prim ...
- 【SPOJ】Distinct Substrings
[SPOJ]Distinct Substrings 求不同子串数量 统计每个点有效的字符串数量(第一次出现的) \(\sum\limits_{now=1}^{nod}now.longest-paren ...
- Tkinter 之Combobox下拉
一.参数说明 语法 作用 cv = tk.stringVar() 绑定变量 com = ttk.Combobox(root, textvariable=cv) 创建下拉框 com.pack() 放置下 ...