运用指针复制的方法,输出用户自定义输入的字符串

本文通过两个示例程序详细解析了字符指针与整型指针的区别,特别是它们在输出完整数组内容方面的不同表现。文章展示了如何使用指针来操作字符数组和整型数组,并解释了为什么字符指针可以输出整个字符串而整型指针只能输出其指向的单个元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include <stdio.h>
int main()
{  
    char c[20];  //定义一个字符数组,长度为20
    char d[20];
    char *m,*h;   //定义指针变量m和h
    h=d;           //把字符数组的第一个地址赋给指针变量h
    printf("请输入字符串:\n");
    gets(c);         //得到输入的字符串,赋值到字符数组c
    m=c;             //把输入的字符数组的第一个地址赋给指针变量h
    h=m;             //把指针m的值赋给指针h
    printf("您刚才输入字符串为:\n");
    puts(h);
}

整型数组指针的输出如下:

#include <stdio.h>
#include <stdlib.h>
int main()
{ 
  int i[2]={1,2};
  int *p=&i;
  printf("输入\n");
  scanf("%d",p);
  printf("%d",*p);
  }

结果只能输出1。

比较整型指针和字符指针的区别,虽然都是将数组的第一个首地址赋给了指针变量,但是用%s输出的时候字符指针能输出全部内容,比如printf(“%s”,*p);整型指针却只能输出首地址的内容,比如printf(“%d”,*p);。当然了如果用%c输出字符指针的时候仍然输出首地址存放的内容,比如,printf(“%c”,*p);。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值