c语言基础(二)之指针事例

 

这章主要讲解指针:

Demo事例说明:

#include<stdio.h>

main(){

 int i = 3;//定义一个变量 ,变量名为i,变量类型为int类型

int* p ;  //定义一个变量,变量名为p,变量类型为int*类型

            //int* 类型是一个指针变量,是一个存放地址的类型,只能存放int类型数据的地址
            //int** 是一个存放指针地址的数据类型
p = &i;   //&  取地址符号  取出i 的地址,把它放到p变量里

printf("i变量在内存中的地址为 %#x\n",p);

//*p 可以取出p变量存放地址里面的值

printf(" *p 的值 %d\n", *p);  //打印值 3

*p = 1234;

printf(" i 的值为  %d\n",i);//打印值为 1234

i = 333;

printf(" *p 的值为 %d\n", *p);//打印值为 333

//*p和 i 之间有什么关系呢?

//说明:*p和 i 是同一个变量,代表的是一块内存空间,能够相互修改里面的值

// p 和 i 之间的有什么关系 呢?

// p和 i 是没有关系,修改p或i的值,都不相互影响。它们之间是通过指针相互联系的。

}

 

时间: 2024-08-21 16:03:11

c语言基础(二)之指针事例的相关文章

C++语言基础 例程 this指针

贺老师的教学链接  本课讲解 内幕: 每个对象有个自己的this指针 #include <iostream> using namespace std; class Time { public: void set_time(int,int,int); void show_time(); private: int hour; int minute; int sec; }; int main( ) { Time t1,t2; t1.set_time(12,45,32); t2.set_time(21

C++语言基础 例程 对象指针

贺老师的教学链接  本课讲解 示例:使用指向对象数据成员的指针 #include <iostream> using namespace std; class Time { public: Time(int,int,int); void get_time( ); private: int hour,minute,sec; }; Time::Time(int h,int m,int s):hour(h),minute(m),sec(s) {} void Time::get_time( ) { co

c语言-C 语言基础问题 指针素组 为什么指针p所指向地址会被改变?

问题描述 C 语言基础问题 指针素组 为什么指针p所指向地址会被改变? #include char *p[] = {"to","yes","is ok","how do you do ?","holle"}; int main(int argc,char* argv[]) { int a[5] = {0}; int i = 0; int j = 0; char ** t; t = p; for(i = 0;

指针-C语言的二维数组的值的修改

问题描述 C语言的二维数组的值的修改 例如:char a[][7]={"foo","bar","foobar"}; 想调换a[0]和a[2]的值 利用指针的话 应该用什么办法 解决方案 数组虽然说可以看成指针,但是可以认为它是常量指针,因此没有办法直接换指针,因此只有吧两个数组内的数据各自交换 void swap(char *a,char *b,int n) { for (i=0;i<n;i++) *a++=*b++; } void mai

c语言 二维指针-c语言二维指针作为参数的问题。

问题描述 c语言二维指针作为参数的问题. #include int stringcut(char str, char dest[][50],int num,int lines) /如果这里不加上50会出错*/ { char *temp=str; int k=0; if(strlen(str) ==NULL) { return -1; } for(k=0;k<lines;k++) { strncpy(dest[k],temp,num); temp=temp+num; } return 0; } m

Swift语言指南(二)--语言基础之注释和分号

原文:Swift语言指南(二)--语言基础之注释和分号 注释 通过注释向自己的代码中注入不可执行的文本,作为你自己的笔记或提示.Swift编译器运行时会忽略注释. Swift的注释与C语言极其相似,单行注释以两个反斜线开头: //这是一行注释 多行注释以/*开始,以*/结束: /* 这也是一条注释, 但跨越多行 */ 与 C 语言的多行注释有所不同的是,Swift 的多行注释可以嵌套在其他多行注释内部.写法是在一个多行注释块内插入另一个多行注释.第二个注释块封闭时,后面仍然接着第一个注释块: /

C语言基础教程(四)指针、结构、联合和枚举(1)

本节专门对第二节曾讲述过的指针作一详述.并介绍Turbo C新的数据类型:结构.联合和枚举,其中结构和联合是以前讲过的五种基本数据类型(整型.浮点型.字符型.指针型和无值型)的组合.枚举是一个被命名为整型常数的集合.最后对类型说明(typedef)和预处理指令作一阐述. 1. 指针(point) 学习Turbo C语言,如果你不能用指针编写有效.正确和灵活的程序,可以认为你没有学好C语言.指针.地址.数组及其相互关系是C语言中最有特色的部分.规范地使用指针, 可以使程序达到简单明了,因此,我们不

【COCOS2DX-LUA 脚本开发之二】LUA语言基础

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/lua-game/1235.html 从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有任何疑惑或者不对的地方,尽情指正.交流.探讨. 那么首先肯定是Lua语言基础的知识点,下面直接附上代码,注释已经很清楚,无需赘述. 这里顺便给大家推荐一款mac os上的文本编辑器,好用支持多语言编辑,oc,c,c++,java,lua

c-关于C语言基础概念问题

问题描述 关于C语言基础概念问题 刚才迷茫在static的使用,于是看到下面的解释觉得好棒!我在看的C语言程序设计并没有如此详细的解释,谁能推荐一本类似于解释原理的书,就像下图中那种的,告诉你一些名词解释,代码被读取后在系统中如何被分析,被使用?感激之情将溢于言表! 解决方案 以前在图书馆看到过一本叫做 你必须要知道的C256个问题 (大概是叫这个) 里面都是一些很基础的名词解释 或者一些容易弄混淆的知识点 解决方案二: static对全局变量的修饰,可以认为是限制了只能是本文件引用此变量.有的

dsd酸-学习完 c语言 基础 怎么去 进阶 学习什么

问题描述 学习完 c语言 基础 怎么去 进阶 学习什么 学习完 c语言 基础 怎么去 进阶 学习什么 介绍一些书 来看看 解决方案 c++哥们,有了基础想学啥都行,主要看兴趣哦. 解决方案二: <C陷阱和缺陷>,<C和指针>.<必知的C语言495个问题>.<C标准库>.<C语言深度解剖>.<C程序设计语言>.<C专家编程>.<C语言程序设计现代方法>.<C语言详解>.<C语言核心技术>.