ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

指针 再理解

2022-08-03 23:03:26  阅读:144  来源: 互联网

标签:puts str2 ptr2 ptr1 理解 str ptr 指针


本文写于 2019-12-05 23:37

有题如下:修改代码,使其用物种方法输出China

main()
{
    int i = 0;
    char str[6] = {'C', 'h', 'i', 'n', 'a', '\0'}, str1[6] , *ptr, *ptr1, *ptr2 , str2[5];
    while (str[i] != '\0')
    {
        putchar(*str);
        str++;
    }
    scanf("%s", ptr);
    puts(ptr);
    ptr1 = str;
    puts(ptr1);
    ptr2 = "China";
    puts(ptr2);
    str2 = "China";
    printf("%s", str2);
}

 

答案如下:

#include <stdio.h>
 
main()
{                       
    int i = 0;
    char str[6] = {'C', 'h', 'i', 'n', 'a', '\0'}, str1[6] , *ptr, *ptr1, *ptr2 , str2[6];
    while (str[i] != '\0')
    {                       
        putchar(str[i]);
        i++;
    }
    ptr = str1;
    scanf("%s", ptr);
    puts(ptr);
    ptr1 = str;
    puts(ptr1);
    ptr2 = "China";
    puts(ptr2);
    strcpy(str2, "China");
    printf("%s", str2);
}          

其中:C 库函数 char *strcpy(char *dest, const char *src) 把 src 所指向的字符串复制到 dest

这个题做的时候问题在于,,我没有 想把str换成i,而是想用指针把字符串str[6]输出。然后想起一个问题。

对指针所指变量操作和操作指针地址怎么写呢。*str++;这个语句是报错的。str++;也是有问题的。但是*str= *str+1;这是不会报错的。但是网上有人给了 *str++这样的代码。

✖ ✖

标签:puts,str2,ptr2,ptr1,理解,str,ptr,指针
来源: https://www.cnblogs.com/dosu/p/11992823.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有