小编neo*_*neo的帖子

C初学者查询:char数组程序 - 没有获得所需的输出

新手问题:嗨!旨在研究一个阵列在复制期间如何填充另一个(初始化的)阵列.所以我运行了以下代码.

#include<stdio.h>

char strA[]= "\nThis is array 'a'.\n";
char strB[] = "ABCDEFGABCDEFGABCDEFG";

int main()
{
  /* Copy one string to another using pointers */

  char *pA, *pB;
  puts(strA);
  puts(strB);
  pA=strA;
  pB=strB;
  puts(pA);
  puts(pB);
  while(*pA!='\0') {
    *pB++ = *pA++;
    puts(pB);
  }
  *pB='\0';
  puts(strB);

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我所期望的是看到如何在每一步中strA[]复制自己strB[],即在中间某处strB[]strA[]复制元素和剩余strB[]元素.但我找不到strA[]复制的元素strB[],尽管strB[]元素不断减少.以下是输出:

This is array 'a'.

ABCDEFGABCDEFGABCDEFG

This is array 'a'.

ABCDEFGABCDEFGABCDEFG
BCDEFGABCDEFGABCDEFG
CDEFGABCDEFGABCDEFG
DEFGABCDEFGABCDEFG
EFGABCDEFGABCDEFG
FGABCDEFGABCDEFG
GABCDEFGABCDEFG
ABCDEFGABCDEFG
BCDEFGABCDEFG …
Run Code Online (Sandbox Code Playgroud)

c arrays pointers

2
推荐指数
1
解决办法
95
查看次数

标签 统计

arrays ×1

c ×1

pointers ×1