gpt4 book ai didi

c - 做 `char first_word[MAX_LENGTH + 1] = "test";`时,first_word是指针还是字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 01:20:14 26 4
gpt4 key购买 nike

<分区>

我有这个代码:

char first_word[MAX_LENGTH + 1] = "test";
printf("Word to input: %s\n", first_word);
printf("Word to input: %p\n", first_word);

它对两者都成功打印(打印字符串“test”,然后是地址)。

在我的代码中,我最终会这样做:

char *arr_of_strings[MAX_LENGTH + 1];
arr_of_strings[0] = first_word;

并且它正确地将 arr_of_strings[0] 设置为 first_word 是什么(在本例中是一个指针,因为 *arr_of_strings 是一个数组的指针,对吧?)。但是现在当我这样做的时候

printf("arr at 0 is: %s\n", arr_of_strings[0]);

它又打印了一个字符串,我也可以这样打印一个地址吗:

printf("arr at 0 is: %p\n", arr_of_strings[0]);

那么 c 什么时候将 first_word 用作字符串,什么时候将它用作指针?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com