c - C - 如何输入字符串并将其插入到字符串数组中?
问题描述
我想将字符串插入到数组中,直到我输入“ok”。为什么我在输出端只得到“ok”和原始数组?
int main(void)
{
char b[20];
char* str[10] = { "1","2" };
int i = 2;
while (1) {
gets(b);
if (strcmp(b, "ok") == 0) break;
str[i] = b;
i++;
}
for (int j = 0; j < i; j++)
printf("%s ", str[j]);
return 0;
}
解决方案
它们都指向b
,在每次迭代中都会被覆盖。
推荐阅读
- python - 如何获取python函数内部定义的所有局部变量?
- java - 从 java 文件运行 java 文件
- django - Django 异常值:无效过滤器错误:
- python - 我想连接两个python arange,但我只获得第一个arange
- javascript - 理解 js 数组/对象
- python - 如何通过同一端口python为多个视频创建rtsp?
- google-kubernetes-engine - GKE 大使 http -> https 重定向、健康检查问题
- android - 如何在 Android 中将 Button 放置在 WebView 的顶部
- f# - 为什么在这里泛化具有显式类型注释的值?
- swift - Swift - 更新现有核心数据实体的最佳实践