zoukankan      html  css  js  c++  java
  • c语言 字符指针数组的用法

    #include <stdio.h>
    #include <stdlib.h>
    int main(){
         
        //字符数组的使用
        char str[] = {'z','b','c',''};
        //字符数组
        printf("str地址:%p str[0]=%c str[0]地址:%p 
    ",str,str[0],&str[0]);
        printf("str地址:%p str[1]=%c str[1]地址:%p 
    ",str,str[1],&str[1]);
        printf("str地址:%p 打印串:%s
    ",str,str);
        //使用指针
        str[0] = 'w';
        printf("str地址:%p 打印新串:%s
    ",str,str);
        printf("*********************************************************
    ");
        //字符指针数组的使用
        char *str2[] = {"zhangsan","lisi","wangwu"};
        printf("字符串数组元素str2[0]:%s 元素str2[0]地址:%p 字符串指针首地址:%p
    ", str2[0],&str2[0],str2);
        printf("字符串数组元素str2[1]:%s 元素str2[1]地址:%p 字符串指针首地址:%p
    ", str2[1],&str2[1],str2);
        printf("打印*(str2+1)的元素:%s 打印*str2+1的元素:%s 打印该地址:%p 
    ", *(str2+1), *str2+1, str2+1);//这个是二级指针char** str2本身就是一个指针 指针+1 然后 *;就是取值
        //也可以定义一个二级指针
        char **pp = str2;
        printf("打印pp指向的元素地址:%p *pp=%s  %s
    ", pp, *pp, *(pp+1));//必须是*(pp+1) 不能是*pp+1 否则就是查元素zhangsan的值+1 输出:hangsan
         
        printf("*********************************************************
    ");
         
        return 0;
         
    }

     最近一直对这个比较困惑,然后打算解决一下,在网上看了几个博客感觉这个是最好的,给大家分享一下!!!

  • 相关阅读:
    SQLiteDatabase 源码
    SQLiteOpenHelper 源码
    Java同步机制总结--synchronized
    [Swift A]
    [Swift A]-问号&感叹号
    [Swift A]
    [Swift A]
    android 屏幕适配
    2014年度加班时间
    nodejs初学-----helloworld
  • 原文地址:https://www.cnblogs.com/lhyzdd/p/13888628.html
Copyright © 2011-2022 走看看