我环顾四周并尝试了不同的语法,但我似乎无法让它工作。我知道这是基础知识,但不应该花太长时间才能弄清楚。
我有字符数组...
char *roster[2][14] = {
{"13", "10", "24", "25", "15", "1", "00", "4", "11", "23", "22", "32", "3", "35"},
{"Isaiah Briscoe", "Jonny David", "EJ Floreal", "Dominique Hawkins", "Isaac Humphries", "Skal Labissiere", "Marcus Lee", "Charles Matthews", "Mychal Mulder", "Jamal Murray", "Alex Poythress", "Dillon Pulliam", "Tyler Ulis", "Derrick Willis"}
};
然后我从该数组生成一个随机元素...
random = rand() % 14;
printf("What is %s 's number?", roster[2][random]);
然后我尝试打印它,但失败了......
printf("What is %s 's number?", roster[2][random]);
输出
What is (null) 's number?
并且 lldb 显示 printf 语句跳转到...
libsystem_c.dylib`strlen:
-> 0x7fff9a596d32 <+18>: pcmpeqb (%rdi), %xmm0
0x7fff9a596d36 <+22>: pmovmskb %xmm0, %esi
0x7fff9a596d3a <+26>: andq $0xf, %rcx
0x7fff9a596d3e <+30>: orq $-0x1, %rax
最佳答案
数组索引从0
开始。
对于char *roster[2][14];
,可能的索引为
roster[0][random];
roster[1][random];
关于c - 从二维字符数组打印字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33696865/