[問題] C 資料型態位元組的問題
看書看到一半突然發現有這個地方怪怪的,簡單的說
就是利用sizeof()來看位元組的大小看不懂....。
程式碼如下:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
struct data
{
char name[10];
int math;
}student={"Bird",98};
printf("sizeof(student)=%d\n",sizeof(student));
system("pause");
return 0;
}
此時印出的是16
把char name[10]改成char name[11]印出的還是16
改成[20]是24
改成[50]是56
改成[51]是56.....
有先了解一下 int是4個位元組,char是1個位元組
請問造成這些原因是什麼呢?謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.5.212
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1430493488.A.225.html
※ 編輯: elohacp4 (111.251.5.212), 05/01/2015 23:19:18
推
05/01 23:20, , 1F
05/01 23:20, 1F
→
05/01 23:21, , 2F
05/01 23:21, 2F
→
05/01 23:21, , 3F
05/01 23:21, 3F
→
05/01 23:22, , 4F
05/01 23:22, 4F
謝謝您,我懂了^_^
※ 編輯: elohacp4 (111.251.5.212), 05/01/2015 23:27:50
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章