【发布时间】:2014-11-03 14:03:43
【问题描述】:
关于莫斯科代码中的@Vlad: copy 2 arrays into 1 array, in C prog
如果他的代码以这种方式编辑,有谁知道如何删除空行:
#include <stdio.h>
#include <string.h>
int main(void)
{
size_t i;
char ar1[3][10]={"a","b","c"};
char ar2[3][10]={"d","e","f"};
char ar3[10][10];
memcpy( ar3, ar1, sizeof( ar1 ) );
memcpy( ar3 + 5, ar2, sizeof( ar2 ) );
for (i = 0; i < 10; i++ )
{
puts( ar3[i] );
}
return 0;
}
【问题讨论】:
-
首先,确保
ar3已完全初始化,然后添加一个检查。 -
不清楚你在问什么。从程序存储器中的数组中删除“行”?从输出中删除一些东西?
-
@Vorsprung 删除输出中的空行,因此它只打印其中包含值的元素
-
@Quest 姐你特地写了 memcpy( ar3 + 5, ar2, sizeof( ar2 ) );而不是 memcpy(ar3 + 3, ar2, sizeof(ar2) );?这就是为什么你在表达式 ar3 + 5 中使用 5 而不是 3?
-
@VladfromMoscow 我是故意这样做的,我想要一种只打印字符串值并跳过空值的方法
标签: c arrays string multidimensional-array