C
1#include<stdio.h> 2#include<string.h> 3 4int main() 5{ 6 char *str; 7 int num, i; 8 9 printf("何文字のaを用意しますか?\n"); 10 scanf_s("%d", &num); 11 12 str = (char *)malloc(sizeof(char) * (num + 1)); 13 if (!str) { 14 printf("メモリが確保できませんでした\n"); 15 return 1; 16 } 17 for (i = 0; i < num; i++) 18 { 19 *(str + i) = 'a'; 20 } 21 *(str + num) = '\0'; 22 23 printf("%sを用意しました。\n", str); 24 25 free(str); 26 27 return 0; 28}
ここの部分が複雑すぎてわかりません(-_-;)
C
1str = (char *)malloc(sizeof(char) * (num + 1));
①*は全部間接参照演算子?
②charはキャスト?
③sizeofがなぜ必要?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/07 00:08
2017/11/07 00:30