c - 如何从 C 中的二维字符数组中获取字符串?

标签 c arrays string

二维数组:

char c[4][3]={{'a','b','c'},{'d','e','f'},{'g','h','i'},{'j','k','l'}};

因为我想在运行程序后获得“def”,所以我尝试了以下代码:

printf("%s\n",c[1]);

但是,结果是“defghijkl\262”。我的代码有什么问题吗?

最佳答案

您可以通过两种方式打印 def:

char c[4][4]={{'a','b','c','\0'},{'d','e','f','\0'},{'g','h','i','\0'},{'j','k','l','\0'}};        
printf("%s\n",c[1]);

所以,基本上 printf 需要 null 终止来知道在哪里停止打印

或者您可以使用不带空终止的循环进行打印,例如:

char c[4][3]={{'a','b','c'},{'d','e','f'},{'g','h','i'},{'j','k','l'}};
for(int i = 0; i < 3; i++)
{
   printf("%c", c[1][i]);
}

关于c - 如何从 C 中的二维字符数组中获取字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60049928/

相关文章:

c - Sphinxbase 制作/安装失败

c - 将 C 指针交换为函数内的函数

java - 在字符串中找到多个针的最佳方法

python - 使用 Pandas 在另一列中查找列字符串的位置

c - 为结构指针分配内存

c - IPv6地址获取功能?

c - 如何获取 C 中计算的最后一个字符?

javascript - 有机会从选项中生成随机值

PHP数组到谷歌图表系列数组

python - 将列表列表转换为 float ,同时忽略字符串列