###わからないこと
タイトルの通り配列の要素数を求めたいのですが.下記のコードだと,コメントがある行でコンパイルエラーになってしまいます.
なぜでしょうか?
C
1#include <stdio.h> 2#include <stdlib.h> 3 4typedef struct sampledata { 5 char a; 6 int b[3]; 7} sampledata_t; 8 9int main(int argc, const char * argv[]) { 10 sampledata_t *s; 11 int num; 12 char str[] = "1234567"; 13 scanf("%d", &num); 14 s = (sampledata_t *)malloc(sizeof(sampledata_t) * num); 15 printf("s size: %d\n", (int)(sizeof(s) / sizeof(s[0]))); // コンパイルエラーが起きてしまう. 16 printf("str size: %d\n", (int)(sizeof(str) / sizeof(str[0]))); 17 free(s); 18 return 0; 19} 20
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/28 11:34