您的位置:首页 > 编程语言 > C语言/C++

C语言 指针与数组

2014-10-24 20:09 218 查看
指针与数组

一、 用指针指向数组

指针既可以指向整个数组也可以指向某个数组元素

int arr[3] = {1,3,5,2};
int *p1 = arr;
//这里的p1也就为&arr[0]
int *p2 = &arr[2];//这里指向了数组的第三个元素

int i = *p2;
//这里就是i = 5

/*
注意:*p1的值为多少? p1指向的为arr[0] 因此,*p1也就是1
*/


二、指针操作数组

指针可以访问数组的内存地址,所以数组也可以修改数组的元素值

1、修改数组元素

int arr[] = {1,2,5,3};
int *p = arr;

*p = 10;
printf("%d",arr[0]);


2、遍历数组

int arr[5] = {1,2,3,7,4};]
int *p =arr;
for(int i = 0; i < 5; i++) {
printf("%-4d",*(p+i));  //通过*来取值
}


三、指针与字符串

char  str[] ="hello";

char *p = str;

printf("%s",p);  


面试题目

去除字符串中的数字

char str[] = "0ABC12EE1";

 char *p = str;

int i = 0;

while (*p) {

if (*p > '9' || *p < '0') {

str[i++] = *p;

}

p++;

}

str[i] = '\0';

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: