teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

訂正

2019/01/12 06:08

投稿

ham33
ham33

スコア15

title CHANGED
File without changes
body CHANGED
@@ -8,16 +8,17 @@
8
8
  ### 現在
9
9
 
10
10
  ```c++
11
+ #define M
12
+ #define N //数を指定
13
+
11
14
  void func(double *a, double *b, int N){
12
15
  //ここで複雑な計算をしてるので書き換えるのは厳しい
13
16
  //入力がa, 出力をbで受け取るようにしてある
14
17
  }
15
18
 
16
19
  int main(void){
17
- double *a = new double;
20
+ double *a = new double[N];
18
- a = new double[N];
19
- double *b = new double;
21
+ double *b = new double[N];
20
- b = new double[N];
21
22
 
22
23
 
23
24
  func(a, b, N);

2

修正

2019/01/12 06:08

投稿

ham33
ham33

スコア15

title CHANGED
File without changes
body CHANGED
@@ -8,17 +8,24 @@
8
8
  ### 現在
9
9
 
10
10
  ```c++
11
- void func(double *a, int N){
11
+ void func(double *a, double *b, int N){
12
12
  //ここで複雑な計算をしてるので書き換えるのは厳しい
13
+ //入力がa, 出力をbで受け取るようにしてある
13
14
  }
14
15
 
15
16
  int main(void){
16
17
  double *a = new double;
17
18
  a = new double[N];
19
+ double *b = new double;
20
+ b = new double[N];
18
21
 
19
- func(a, N);
20
22
 
23
+ func(a, b, N);
24
+
25
+ //ここでbを使ったプログラムが書いてある
26
+
21
27
  delete[] a;
28
+ delete[] b;
22
29
  return 0;
23
30
  }
24
31
  ```
@@ -27,7 +34,7 @@
27
34
  その一列分を渡したいです。
28
35
 
29
36
  ```c++
30
- void func(double *a, int N){
37
+ void func(double *a, double *b, int N){
31
38
  //関数は書き換えない
32
39
  }
33
40
  int main(void){
@@ -35,17 +42,23 @@
35
42
  for(i=0;i<N;i++){
36
43
  a[i] = new double[M];
37
44
  }
45
+ double **b= new double *b[N];
46
+ for(i=0;i<N;i++){
47
+ b[i] = new double[M];
48
+ }
38
49
 
39
50
  func( );//ここに配列の1列分を要素として渡したい
40
51
  //今まではa[N]={1.0,2.0,3.0}を渡してた
41
- //今度は a[N][M]={1.0,2.0,3.0}{4.0,5.0,6.0}の{1.0,2.0,3.0}を渡した
52
+ //今度は a[N][M]={1.0,2.0,3.0}{4.0,5.0,6.0}の{1.0,2.0,3.0}を渡した
42
53
 
54
+ //ここで出力bを使ったプログラムが書いてある
43
55
 
44
-
45
56
  for(i=0;i<N;i++){
46
57
  delete a[i];
58
+ delete b[i];
47
59
  }
48
60
  delete []a;
61
+ delete []b;
49
62
  return 0;
50
63
  }
51
64
 

1

誤字

2019/01/11 13:07

投稿

ham33
ham33

スコア15

title CHANGED
File without changes
body CHANGED
@@ -45,8 +45,8 @@
45
45
  for(i=0;i<N;i++){
46
46
  delete a[i];
47
47
  }
48
- delete a;
48
+ delete []a;
49
- return0;
49
+ return 0;
50
50
  }
51
51
 
52
52