####解決したいこと
下にあるソースコードですが,
x = (double *)malloc(sizeof(x) * 10);
y = (double *)malloc(sizeof(double) * 10);
でxの書き方は正しいのでしょうか?
windowsのPCではコンパイルは通るのですが,プログラムを実行すると無限ループのようになってしまい,終了しません.
Macだと期待通りの動作をしました.
エラーメッセージが表示されないので,動作しない理由がわからずつまづいています.
C
1#include <stdio.h> 2#include <stdlib.h> 3 4int main(int argc, const char * argv[]) { 5 6 int i; 7 double *x, *y; 8 9 x = (double *)malloc(sizeof(x) * 10); 10 y = (double *)malloc(sizeof(double) * 10); 11 12 for (i=0; i<10; i++) { 13 x[i] = i; 14 y[i] = i; 15 printf("i: %d, x: %.0lf, y; %.0lf\n", i, x[i], y[i]); 16 } 17 18 free(x); 19 free(y); 20 return 0; 21} 22
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/02 12:03
2019/06/02 12:07
2019/06/02 12:16
2019/06/02 12:18