我是嵌入式系统的初学者,我在头文件中看到int_fast8_t/int_fast16_t/int_fast32_t都是带符号的 int。那么它们之间有什么区别吗?或者它们基本相同,即使您为 int_fast8_t 分配了 32 位,它仍然会存储 32 位而不是 8 位?
/* fastest minimum-width signed integer types */
typedef signed int int_fast8_t;
typedef signed int int_fast16_t;
typedef signed int int_fast32_t;
typedef signed __INT64 int_fast64_t;
Run Code Online (Sandbox Code Playgroud) 我是 C 的新手,并试图使用 char ** 创建一个数组,但我在打印它时遇到了问题。有没有办法打印出来,或者我不应该用这种方式来创建一个字符串数组?
int main()
{
char **a = {"abc", "ddd", "ccc", "aaa"};
for (size_t i = 0; i < 4; i++){
printf("%s\n", a+i); // only print out "abc" correctly
// printf("%s\n", *(a+i)); doesn't work
// printf("%s\n", a[i]); doesn't work
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)