C语言指针


地址

地址就是数据元素在内存中的位置表示;

&变量名

#include <stdio.h>
int main(){
         int aa;
         unsigned int bb = &aa;
         printf("%d\n",bb);
         ;
}
#include <stdio.h>
int main(){
    ];
    unsigned ];
    printf("%d\n",add);
    ;
} 

指针

概念

地址表示一个位置,指针指向这个地址表示的位置;指针是一个变量,它存储的是另一个变量的地址,地址运算符&与间接运算符*被放置在变量的前面时,地址运算符返回该变量的地址;被放置在指针的前面时,间接运算符返回该指针指向变量的内容。

指针变量的定义与使用

#include <stdio.h>
int main(){
    int aa;
    int *address;
    address = &aa;
    printf("%d\n",address);
    ;
}
#include <stdio.h>
int main(){
    ];
    unsigned ];
    printf("%d\n",add);
    int *aa;
    aa = &CharArr[];
    printf("%d\n",aa);
    ;
} 

void指针

空指针或无类型指针

#include <stdio.h>
int main(){
    int aa;float bb;char cc;void *address;
    address = &aa; printf("%d\n",address);
    address = &bb; printf("%d\n",address);
    address = &cc; printf("%d\n",address);
    ;
}
#include <stdio.h>
int main(){
    int aa;float bb;double cc;char dd;
    int ee;float ff;double gg;char hh;
    int *AA;float *BB;double *CC;char *DD;
    void *EE,*FF,*GG,*HH;
    AA = &aa;BB = &bb;CC = &cc;DD = &dd;
    EE = &ee;FF = &ff;GG = &gg;HH = &hh;
    printf("%d\n",AA);
    printf("%d\n",BB);
    printf("%d\n",CC);
    printf("%d\n",DD);
    printf("%d\n",EE);
    printf("%d\n",FF);
    printf("%d\n",GG);
    printf("%d\n",HH) ;
    ;
}

指针运算

取指针元素

#include <stdio.h>
int main(){
    ;
    int *AA;
    AA = &aa;
    printf("%d\n",aa);
    printf("%d\n",&aa);
    printf("%d\n",*AA);
    ;
}
#include <stdio.h>
int main(){
    ;int *address;int values;
    address = &aa; printf("%d\n",address);
    values = *address; printf("%d\n",values);
    ;
}

指针的自增自减

指针与数组

数组名也是指针即数组元素的第一个元素的地址;

指针与字符

#include <stdio.h>
int main(){
    char character = 'c';
    char *c_add;
    c_add = &character;
    printf("%c\n",character);
    printf("%d\n",&character);
    printf("%c\n",*c_add);
    ;
}

指针与字符串

#include <stdio.h>
int main(){
    //
    ] = "abcdefghij";
    char *str_add;
    str_add = CharArr;
    int i;
    ;i<;i++,str_add++){
        printf("%d %d %c\n",i,str_add,*str_add);
    }
    ;
}

09C语言指针的更多相关文章

  1. C语言指针转换为intptr_t类型

    1.前言 今天在看代码时,发现将之一个指针赋值给一个intptr_t类型的变量.由于之前没有见过intptr_t这样数据类型,凭感觉认为intptr_t是int类型的指针.感觉很奇怪,为何要将一个指针 ...

  2. [转]C语言指针学习经验总结浅谈

    指针是C语言的难点和重点,但指针也是C语言的灵魂 . 这篇C语言指针学习经验总结主要是我入职以来学习C指针过程中的点滴记录.文档里面就不重复书上说得很清楚的概念性东西,只把一些说得不清楚或理解起来比较 ...

  3. 不可或缺 Windows Native (7) - C 语言: 指针

    [源码下载] 不可或缺 Windows Native (7) - C 语言: 指针 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 指针 示例cPointer.h #i ...

  4. C语言指针学习

    C语言学过好久了,对于其中的指针却没有非常明确的认识,趁着有机会来好好学习一下,总结一下学过的知识,知识来自C语言指针详解一文 一:指针的概念 指针是一个特殊的变量,里面存储的数值是内存里的一个地址. ...

  5. (转载)c语言指针学习

    前言 近期俄罗斯的陨石.四月的血月.五月北京的飞雪以及天朝各种血腥和混乱,给人一种不详的预感.佛祖说的末法时期,五浊恶世 ,十恶之世,人再无心法约束,道德沦丧,和现在正好吻合.尤其是在天朝,空气,水, ...

  6. 关于C语言指针的问题

    在学习关于C语言指针的时候,发现这样一个问题,代码如下: #include<stdio.h> #include<stdlib.h> #include<string.h&g ...

  7. C语言指针类型 强制转换

    关于C语言指针类型 强制转换  引用一篇文章: C语言中,任何一个变量都必须占有一个地址,而这个地址空间内的0-1代码就是这个变量的值.不同的数据类型占有的空间大小不一,但是他们都必须有个地址,而这个 ...

  8. C语言指针和数组知识总结(上)

    C语言指针和数组知识总结(上) 一.指针的基础 1.C语言中,变量的值能够通过指针来改变,打印指针的语句符号可以是:  %08x 2.指针的本质 指针的本质就是变量,那么既然是变量,那么一定会分配地址 ...

  9. C语言指针操作

    欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives/pointer-manipulation. ...

随机推荐

  1. Java学习笔记----容器

    一.Java Collections框架是什么? Java Collections 框架中包括了大量集合接口以及这些接口的实现类和操作它们的算法(如:排序.查找.反转.替换.复制.取最小元素.取最大元 ...

  2. c++运算符重载以及一些基本概念

    c++primer第四版435 1.赋值( = ), 下标( [ ] ) ,调用 (  ( )  ), 成员訪问箭头 (->)等操作符必须定义为成员,定义为非成员时,编译器报错 2. 像赋值一样 ...

  3. 2016/1/6 输出菱形 while语句计算阶乘分数之和

    public class LingXing { public static void main(String[] args) { //打印菱形 for (int x=1;x<6;x++){ fo ...

  4. AT2004 Anticube

    https://www.zybuluo.com/ysner/note/1304774 题面 给定\(n\)个数\(s_i\),要求从中选出最多的数,满足任意两个数之积都不是完全立方数. \(n\leq ...

  5. 洛谷 P1970 花匠 —— DP

    题目:https://www.luogu.org/problemnew/show/P1970 普通的DP,f[i][0/1] 表示 i 处处于较小或较大的长度: 注意:1.树状数组向后 query 时 ...

  6. 杂项:MySQL

    ylbtech-杂项:MySQL 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 0. https://www.mysql.com/ 1. https://bai ...

  7. 谷歌浏览器(Chrome)查看http报文headers信息

    转自:https://blog.csdn.net/floatdreamed/article/details/79208719 ①打开谷歌浏览器,随意输入要搜索的内容 ②按下F12键,此时会弹出浏览器的 ...

  8. E20180119

    Foundation   n. 基础; 地基; 粉底; 基金(会); hybrid   n. 杂种; 杂交生成的生物体; 混合物; 混合词; adj. 混合的; 杂种的;

  9. bzoj 3401: [Usaco2009 Mar]Look Up 仰望【单调栈】

    用单调递减的栈从后往前扫一遍即可 #include<iostream> #include<cstdio> using namespace std; const int N=10 ...

  10. Akka源码分析-Akka-Streams-概念入门

    今天我们来讲解akka-streams,这应该算akka框架下实现的一个很高级的工具.之前在学习akka streams的时候,我是觉得云里雾里的,感觉非常复杂,而且又难学,不过随着对akka源码的深 ...