怎么给指针数组的每个指针赋值

怎么给指针数组的每个指针赋值

问题描述:

怎么给指针数组的每个指针赋值啊,就是怎么让每个指针指向scanf输入的字符串
以下为啥不对
#include<stdio.h>
#include<string.h>
int main()
{
char * num[30];
for(int i=0;i<=2;i++)
scanf("%s",num[i]);
for(int j=0;j<=2;j++)
printf("%s",*(num[j]));
}

你如果要按你的代码输入 那么用%c 如果想要用%s那么这么写

#include<stdio.h>
#include<string.h>
int main()
{
  charnum[30];
  scanf("%s",num);
  printf("%s",num);
}

字符串实际就是个数组 num就是他的首地址 %s 他就会读取你输入的串 到空格结束,从首地址开始存放

你说指针数组 就你这个代码来说 你说的是 字符数组吧。。

你只定义了一个一维char数组,是存不下3个字符串的
你应该定义二维char数组