• c语言11-1


    1、原始程序,数组实现的字符串和指针实现字符串的不同点

    #include <stdio.h>
    
    int main(void)
    {
        char *p = "123";
        printf("first p = %s
    ", p);
        
        p = "456";
        printf("second p = %s
    ", p);
        
        return 0;    
    } 

    使用数组实现的字符串和使用指针实现的字符串的区别。

    使用数组实现的字符串的数组名不能够再进行重新赋值了,否则数组在内存上的位置将发生变化,尽管数组名被解释为指向第一个元素的指针,但是仍然不能被修改。

    使用指针实现的字符串,指针名可以被重新赋值,实现指针从指向原来的字符串中的字符到指向新的字符串中的字符。

    2、11-1

    #include <stdio.h>
    
    int main(void)
    {
        char *p = "123";
        printf("first p = %s
    ", p);
        
        p = "456" + 1;
        printf("second p = %s
    ", p);
        
        return 0;
    }

     程序由原来显示456变成显示56。

    指针p被重新赋值时,指针指向字符串456的第一个字符也就是4,但是指针加一,指针向后移动一位,指向了5,因此显示56.

  • 相关阅读:
    20.logging模块
    21.django中间件源码阅读
    18.configparser模块
    15.DRF学习以及相关源码阅读
    19.tcp_upd
    13.关于继承封装,以及反射
    16.html转pdf的一个小示例
    14.django返回展示一张图片
    GridView列标题修改
    ~为服务器端根目录符
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14842096.html
Copyright © 2020-2023  润新知