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

質問編集履歴

1

追記:解決内容

2020/09/06 23:18

投稿

mjk
mjk

スコア303

title CHANGED
File without changes
body CHANGED
@@ -15,8 +15,35 @@
15
15
  誤:**1 (null) (null)**
16
16
 
17
17
  ---
18
+ #回答とアドバイスを頂き試したこと
18
19
 
20
+ `memcpy(b, c, sizeof(*c) * AS);`
21
+ 配列の要素数AS(=3)を掛けたらうまくいきました。
22
+ 8 x 3 = 24 byte?
23
+
24
+ うまくはいきましたが**この書き方が一般的なのでしょうか?**
25
+ アドバイスなどあればコメントください。
26
+
19
27
  ```C
28
+ void funcB(const char *c[AS]) {
29
+ char *b[AS];
30
+ memcpy(b, c, sizeof(*c) * AS);
31
+ printf("%d %d\n", sizeof(*b), sizeof(*c));
32
+ printf("%d %d\n", sizeof(b), sizeof(c));
33
+ printf("%s %s %s\n", b[0], b[1], b[2]);
34
+ }
35
+ ```
36
+
37
+
38
+ ```output
39
+ 1 2 3
40
+ 8 8
41
+ 24 8 //←ここで気づきました
42
+ 1 2 3
43
+ ```
44
+ ---
45
+ #質問時のコード
46
+ ```C
20
47
  #include <stdio.h>
21
48
  #include <stdlib.h>
22
49
  #include <string.h>