字符型指针、字符串指针、整数指针

本文深入探讨字符型指针与整数型指针的概念及应用,通过实例讲解了字符串指针的使用方法,包括如何进行算术运算、赋值以及如何利用指针修改数组元素等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字符型指针

char a[] = "bcdef";

char *m = a;

//m = bcdef  *m = b

//字符串指针m中实际上存的是该字符串首字符的地址,所以用取内容运算符*对m进行操作即(*m)时,*m = b

m = m+2

//m = def    *m = d

//m进行了+2,所以此时指针指的位置向后移动了两位,*m=d

将一个字符串指针赋给另一个字符串指针

char *pa = "pa111";

char *pb = pa;

//pb = pa111,*pb = p

字符串指针

string str="123456";

string *m = &str;         // *m="123456"

整数型指针

 

#include<iostream>
#include<stdio.h>
using namespace std;

void increment(int *p){
	(*p)++; 
}

void incrementp(int **pointer){
	(**pointer)++;
}

void move_p(int **pointer,int arr[]){
	*pointer = &arr[1];
}

int main(){
	
	int a=10;
	
	int *q = &a;
	increment(q);   //a值加一 
	cout << "a = " << a << endl; //a=11
	
	int arr[]={1,6,7,8,9};
	//int *p = arr+1;  //*p值为6 
	//int *p = arr;    //*p值为1
	 
	int *p = &arr[0];
	
	incrementp(&p);  //将指针p所指位置的值加一 
	cout << *p << endl; //*p=2
	
	move_p(&p,arr);  //指针指向数组第二个位置 
	cout << *p << endl; //*p=6
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值