1. 指针初始化注意须知
<1>指针变量和普通变量一样,外部或者静态指针变量若未初始化,则被自动初始化为NULL,它的值为0(ASCII字符NULL的代码)。

<2>可以用已初始化的指针变量初始化另一个指针变量。例如:int a=3; int *p=&a; int *s =p;

<3>可以将一个指针变量初始化为空指针,但是,不能用常量作为指针变量的初始值。
错误的使用:int *p = 1000;
正确的使用:int *p = NULL; p=2000;

2. void *类型的指针(空指针类型)和空指针
 void *类型的指针表示指向的类型为空或不确定,使用时,经常和强制类型转换一起使用。该类型的指针指向的类型是 void,不管其中的值为什么,都能进行存储。
 空指针是指:不管其指向的类型是什么,其值都是为NULL(或者0)。

3. 指针的加减运算
<1>指针的加减整数运算
 设p指向某数组的第一个元素,那么p+n则表示指向下标为n的元素。注意是小标为n的元素,数组的第一个元素下标为0。不要被迷糊了。不管指针变量指向何种数据类型,当指针加(减)一个整数n,其结果就是指针向地址后(前)移动n*sizeof(指针的数据类型)个字节的距离。

<2>指针间相减运算
 当p和s为数组指针地方时候,p-s的绝对值表示它们所指向的数据之间元素的个数,如果结果为1,则代表p和s所指向的两个元素是相邻的。

<3>指针的关系运算
 前提是两个指针指向的是同一个对象,比如同一个数组。注意:只有相同类型的指针才能进行比较。

运算表达式 如果为真
p<s p所指向的元素在s所指向的元素之后
p>s p所指向的元素在s所指向的元素之前
p==s p和s指向的是同一个元素
p<=s p所指向的元素在s所指向的元素之后或等于s所指向的元素
p>s p所指向的元素在s所指向的元素之前或等于s所指向的元素

C语言中指针初始化和常规运算相关推荐

  1. c语言中减号算一个字符吗,C语言中指针的加减运算

    char arr[3]; printf("arr:\n%d\n%d\n%d\n", arr, arr + 1, arr + 2); char *parr[3]; printf(&q ...

  2. c语言字符串加减_C语言中指针的介绍

    C语言中指针的介绍 指针是C语言中广泛使用的一种数据类型. 运用指针编程是C语言最主要的风格之一.利用指针变量可以表示各种数据结构:能很方便地使用数组和字符串: 并能象汇编语言一样处理内存地址,从而编 ...

  3. c语言中的指针语法,C语言中指针的用法介绍

    C语言中指针的用法介绍 for(int i=0;i { num+=*s;s++; } return num; ) 这个例子中的函数 fun统计一个字符串中各个字符的 ASCII 码值之和.前面说了,数 ...

  4. c语言中指针中 - 和 。的区别?

    c语言中指针中 -> 和 .的区别? 例子1:比如有如下结构 typedef strut node{ int data;   strut node * next; } ListNode; Lis ...

  5. C语言中数据的表现形式及其运算

    C语言中数据的表现形式及其运算 1. 常量和变量 1.1 常量 在程序运行过程中,其值不能被改变的量称为常量.如1000,0.0036,0.0025是常量.数值常量就是数学中的常量. (1)整型常量. ...

  6. C语言指针使用过程中 不需要清零,C语言中指针使用常见问题及解决办法.pdf

    . - - 自 · - j 1- j w - m - - [ - № 实用第一 智慧密集 C语 i觅 及 捧法l j||? l .. 一 摘 要:讲述 了在 c语言中指针使用时所 出现的一些常见问题 ...

  7. 初学者对C语言中指针的爱恨情仇

    C语言中指针和数组的爱恨情仇 文章目录 C语言中指针和数组的爱恨情仇 一.前言 二.为什么学指针 三.说明 四.跟我一起学 (一)C语言中的*和& 1.C语言中为什么存在&和* 2.& ...

  8. c语言中*用于指针,关于C语言中指针的理解

    关于c语言中指针的一些理解 这几天在看任哲老师编写的嵌入式实时操作系统uC/OS原理与应用一书,第二章讲到指针的用法,我发现自己有些地方有疑问,就重新看了关于c指针的知识.同时也对指针有了一定的理解. ...

  9. C语言中指针的地址和内容

    参考:C语言中指针的地址和内容 作者:wallying 发布时间:2018-10-18 09:47:54 网址:https://blog.csdn.net/qq_36631580/article/de ...

最新文章

  1. CSS(2 )-- CSS样式大全
  2. 轻松应对IDC机房带宽突然暴涨问题
  3. HTML css嵌套的一个例子
  4. perl学习笔记(8)
  5. (王道408考研操作系统)第二章进程管理-第三节1:进程同步与互斥的基本概念
  6. CASE WHEN 小结
  7. angular乱码_号外!Angular 中文文档已同步翻译至 7.0
  8. 欠阿里云 1 分钱,数据被删除
  9. ApiDoc 一键生成注释
  10. Python写excel练习
  11. Adobe Photoshop CC已停止工作重装显卡驱动解决方法
  12. python中如何显示特殊的单位符号
  13. 怎样把计算机添加到网络打印机,怎么将电脑打印机设置成连接网络打印机
  14. Cypress前端测试左移分享
  15. 王师傅c语言游戏,炉石王师傅斗鱼首播!旭旭宝宝都送了10发超火,只有他没来...
  16. 什么是DBMS以及DBMS的分类
  17. bootstrap轮播速度_BootStrap:轮播插件
  18. SpringSecurityOauth2授权模式与使用RSA非对称加密方式生成公钥私钥
  19. C 常數0L,0LL,0UL,0.0f,0.0L
  20. 做为码农,应该被熟知和关注的技术站点,再也不用担心技术漏洞

热门文章

  1. Go 语言中 switch 类型断言用法
  2. Day18:多线程-火车站多窗口售票案例
  3. 【Konva入门教程】1、简单例子
  4. php开发与应用,PHP开发与应用_大作业_模板
  5. 慎用安卓USB调试模式 谨防陷入安全危机
  6. 计算机主机拆卸的注意事项,电脑主机怎么拆?注意事项是什么?
  7. 怎样让自己的足疗店长期发展下去
  8. 先初始化再做RAID的好处
  9. 气动PLC执行器的原理,气动PLC控制实验
  10. matlab 生成静音文件,如何设置静音音频文件