1613551 发表于 2022-7-17 10:15:49

关于sizeof的问题

我想知道这个sizeof是怎么算的啊?
\的不占内存,然后nsum各占一个字节,是4个字节,= 不占字节,然后%d是占了四个字节吗?最后还有一个\0占了一个字节,所以这个程序的结果是9

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
      printf("%d\n", sizeof("\nsum=%d\n"));

      return 0;
}

临时号 发表于 2022-7-17 10:15:50

本帖最后由 临时号 于 2022-7-17 11:42 编辑

\n是转义字符,表示换行,占一个字节
sum=占4个字节
%d,这里并没有格式化,所以你可以直接当成普通字符去算,%d占2个字节
\n是转义字符,表示换行,占一个字节
\0占1个字节
加起来,一共9个字节
页: [1]
查看完整版本: 关于sizeof的问题