如何在数组中的每个内存块中输入一个字符串?

时间:2016-05-26 03:54:46

标签: c arrays string

我想从数组中访问字符串,就像可以从数组中访问整数一样,比如A={1,2,3},然后在调用A[0]时,会得到1。类似地应该对字符串做什么A={a,b,c}因此在调用A[0]时我得到a

我尝试了这个输入,

char in[1000];
for (i=0;i<5;i++)
{
    in[i]="A";
    printf("in is %f",in[i]);
}

但我收到了警告assignment makes integer from pointer without a cast

2 个答案:

答案 0 :(得分:0)

您应该将%s用于不是%f的字符串。

  • %s - 字符串(C中的字符数组)
  • %c - 字符
  • %f - 浮动
  • %d - int
  • %ls - long int

你的例子:

int i=0;
char in[1000];
for (i=0;i<5;i++)
{
    in[i]='A';
    printf("in is %c\n",in[i]);
}

示例代码:example

答案 1 :(得分:0)

由于您正在制作字符数组,因此需要为其提供字符值。

将您的代码更改为

in[i]='A'
printf("in is %c",in[i]);

希望这会有所帮助:)