C语言之指针在printf语句里面的使用规范
*** 一级指针的使用规则探索 ***
#include<stdio.h>
#include<stdlib.h> void main()
{
char *p;
p = "uvtgyujyg"; //一
//直接使用*p+n
printf("%c %d\n",*p); //==》u
printf("%c %d\n",*p+); //==》v
printf("%c %d\n\n",*p+); //==》w //直接使用 (*p)+n
printf("%c %d\n",(*p)); //==》u
printf("%c %d\n",(*p)+); //==》v
printf("%c %d\n\n",(*p)+); //==》w //使用 *(p+n) ==> 正确用法 可逐个将p中的各个字符打印出来
printf("%c %d\n",*p); //==》u
printf("%c %d\n",*(p+)); //==》v
printf("%c %d\n",*(p+)); //==》t
printf("%c %d\n\n",*(p+)); //==>g //不使用* ==》 可打印出该字符串
printf("%s\n",p); //==》uvtgyujyg
printf("%c\n",p); //==》乱码 printf("\n"); //二
//使用*p++时
*p++;
printf("%c %d\n",*p); //==》v
printf("%c %d\n",*p+); //==》w
printf("%c %d\n\n",*p+); //==》x //不使用*
printf("%s\n",p); //==》vtgyujyg (相较于之前少了第一个字符u)
printf("%c\n",p); //==》乱码 printf("\n"); //四
//直接使用p+n ==》 正确
p = p + ;
printf("%s\n",p); //==》tgyujyg
printf("%c %d\n",*p); //==》t
printf("%c %d\n",*(p+)); //==》g
printf("%c %d\n",*(p+)); //==》y
printf("%c %d\n\n",*(p+)); //==>u #if(0)
//
//使用(*p)+n时 ==》 //运行直接错误,无法运行
p = (*p)+;
//使用 *(p+n) ==> 可逐个将p中的各个字符打印出来
printf("%c %d\n",*p); //==》u
printf("%c %d\n",*(p+)); //==》v
printf("%c %d\n",*(p+)); //==》t
printf("%c %d\n\n",*(p+)); //==>g (*p)++; //运行直接错误,无法运行
printf("%c\n",*p); //==》
printf("%s\n",p); //==》
printf("%c\n",*p+); //==》
printf("%c\n",p); //==》
#endif system("pause");
return ;
}
C语言之指针在printf语句里面的使用规范的更多相关文章
- C语言函数指针基础
本文写的非常详细,因为我想为初学者建立一个意识模型,来帮助他们理解函数指针的语法和基础.如果你不讨厌事无巨细,请尽情阅读吧. 函数指针虽然在语法上让人有些迷惑,但不失为一种有趣而强大的工具.本文将从C ...
- *C语言有关指针的变量声明中的几个易错点
转至:http://my.oschina.net/ypimgt/blog/108265 Technorati 标签: 指针, typedef, const, define 我们都知道,至少听说过 ...
- 编程基础-c语言中指针、sizeof用法总结
1.指针 学习 C 语言的指针既简单又有趣.通过指针,可以简化一些 C 编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的.所以,想要成为一名优秀的 C 程序员,学习指针是很有必要的. ...
- C语言二重指针与malloc
(内容主要源于网上,只是加入了些自己的剖析) 假设有一个二重指针: char **p; 同时有一个指针数组 char *name[4]; 如何引用p呢? 首先我们有程序代码如下 #include &l ...
- C语言本身并不提供输入输出语句
C语言本身并不提供输入输出语句,输入和输出操作是由函数来实现的.在C标准函数库中提供了一些输入输出函数,例如,printf函数和scanf函数.在使用他们时,千万不要误认为他们是C语言提供的“输入输出 ...
- Android For JNI(五)——C语言多级指针,结构体,联合体,枚举,自定义类型
Android For JNI(五)--C语言多级指针,结构体,联合体,枚举,自定义类型 我们的C已经渐渐的步入正轨了,基础过去之后,就是我们的NDK和JNI实战了 一.多级指针 指针的概念我们在前面 ...
- “对外部(局部)变量的访问”是C语言函数指针的最大弱点
1.“对外部(局部)变量的访问”是C语言函数指针的最大弱点 . #include <stdio.h> #include <stdlib.h> /* 结构体定义 */ struc ...
- go语言学习--指针的理解
Go 的原生数据类型可以分为基本类型和高级类型,基本类型主要包含 string, bool, int 及 float 系列,高级类型包含 struct,array/slice,map,chan, fu ...
- C语言函数指针 和 OC-Block
C语言函数指针 和 OC-Block 一. C语言函数指针 关于函数指针的知识详细可参考:http://www.cnblogs.com/mjios/archive/2013/03/19/2967037 ...
随机推荐
- circus 进程以及socket 管理工具&&docker运行
circus 是由mozilla 团队开发基于python 以及zeromq 的进程以及socket 管理的工具,类似supervisord 但是比supervisord 更灵活方便 来自官方的使用比 ...
- graphql-hooks hooks first 的graphql 客户端
graphql-hooks 是一个hooks first 的graphql 客户端,支持一一些特性 首类hooks api 比较小(5.3Kb) gzip 1.8 kb 完整支持ssr (通过grap ...
- 2-开发共享版APP(接入指南)-设备接入说明:快速接入
https://www.cnblogs.com/yangfengwu/p/11249674.html 该APP安装包下载链接: http://www.mnif.cn/appapk/IotDevelop ...
- 洛谷P1799 数列[NOI导刊]
题目 dp状态定义的好题,初看这个题其实并不好想到他的状态,但是可以根据状态的定义,需要满足最优子结构.还有比较重要的一点就是方便转移方程. 首先我们定义dp[i]表示前i个数所能得到的最多个数,发现 ...
- OpenFOAM——绕流振动
流体的物性参数为: 密度:1kg/m3 粘度系数:0.01N·s/m2 首先进行建模操作,任何建模软件均可,本算例在ICEM建模和进行网格划分,生成的网格如下: 接下来转入Open ...
- durpal安装时The translation server is offline解决
从https://localize.drupal.org/download下载语言文件上传到 目录/var/www/html/sites/default/files/translations 或者wg ...
- jmap -heap 查看堆内存
概述 用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息 可以看到经过分配的 ...
- Fiddler常用功能总结
使用Fildder几年来,深深的体会到了其便利性,给工作带来了极大的便利,所以把其它常用功能总结如下 一:介绍 1.免费,支持抓取http.https协议,可独立运动 2.原理:(客户通过移动端或是P ...
- 刷题记录:[De1CTF 2019]SSRF Me
目录 刷题记录:[De1CTF 2019]SSRF Me 一.涉及知识点 1.MD5长度扩展攻击 2.Python 2.x - 2.7.16 urllib.fopen支持local_file导致LFI ...
- 第06组 Beta冲刺(3/5)
队名:拾光组 组长博客链接 作业博客链接 团队项目情况 燃尽图(组内共享) 组长:宋奕 过去两天完成了哪些任务 继续维护后端代码 学习深入python 研究匿名拨打电话问题.套牌多结果处理问题 Git ...