Chinaunix首页 | 论坛 | 博客
  • 博客访问: 99232
  • 博文数量: 102
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1011
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-15 13:58
个人简介

普普通通一个人

文章分类

全部博文(102)

文章存档

2018年(1)

2015年(13)

2014年(88)

我的朋友

分类: C/C++

2014-02-20 22:39:15


点击(此处)折叠或打开

  1. #include <stdio.h>
  2. #include <string.h>

  3. int main(){
  4.     //*a 相当于a[5],里面存了5个元素,分别是‘j’、‘k’、‘l’、‘m’、‘\0’
  5.     char *a = "jklm";
  6.     //算起来的话,数组长度为4,其实没有包括‘\0’
  7.     printf("%d\n", strlen(a));
  8.     //a就是指向字符数组(字符串),第一个元素的指针,打印*a,会打印出j
  9.     printf("%c\n", *a);
  10.     
  11.     char *charPtr;
  12.     //把a[2]的地址赋值给了charPtr,那么charPtr也就成了数组
  13.     charPtr = &a[2];
  14.     //只不过这个数组的长度为2,其实为3,还是没把‘\0’算进来
  15.     printf("%d\n", strlen(charPtr));
  16.     //打印*charPtr,其实就是打印charPtr[0],所以l被打印出来了
  17.     printf("%c\n",*charPtr);
  18.     printf("%c\n", charPtr[0]);

  19.     //定义了一个字符型变量a
        char b = 'h';
        //定义了一个字符型指针
        char *charPtr2;
        //把字符型变量的地址付给了指针
        charPtr2 = &b;
        //打印字符型变量
        printf("%c\n", b);
        //打印指针的间接引用
        printf("%c\n", *charPtr2);
        //其实这个指针,就是一个 只有一个元素的字符型数组,他指向了这个数组的第一个字符,所以charPtr2[0],其实就是b
        printf("%c\n", charPtr2[0]);

  20.     return 0;
  21. }

阅读(124) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~