奇怪的C字符串输出

Pri*_*pal 2 c string

当我遇到这段代码时,我正试图在C中学习字符串.

#include <stdio.h>
int main(){
        char s[] = "Hello world";
        printf("%s" , s);
        printf("%s" , &s);
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

两者都给出了Hello World作为输出.根据我的理解,这个输出对于第一种情况是好的.如何为第二个工作?请澄清.

Pup*_*ppy 6

获取数组的地址与获取第一个元素的地址相同.当使用该阵列的名字,那么它也衰减到它的地址的第一个元素-这样的表达s&s产率相同的结果.