c语言报错小问题:
为什么我可以输出整段但不可以输出数组的第一部分http_request[0]
而且输出整段时为什么连每小段的引号"都去掉了呢


c语言报错小问题:
为什么我可以输出整段但不可以输出数组的第一部分http_request[0]
而且输出整段时为什么连每小段的引号"都去掉了呢


关注“% s”需要类型“char *”的参数,http_request[0]无法输出是因为它只是一个字符而不是一个字符串,输出整段时每个小段的引号被去掉是因为printf函数会自动忽略字符串中的引号。如果你想要打印这几个字符串中的其中一个,可以使用指针数组来访问每个字符串。例如:
#include<stdio.h>
int main()
{
char http_request[] = "GET / devices / 1095299023 / datastreams / LED Status HITP / 1.1\r\n";
char arr1[100] = "api-key: n8XbhtipblphuHkS9EaSMJSsSs=\r\n";
char arr2[100] = "Host;api.heclouds. com\r\n";
char arr3[100] = "Connection:close";
char* parr[4] = { http_request ,arr1 ,arr2 ,arr3 };
printf("Hello, World!-- - % s\n", parr[0]);
return 0;
}
