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

回答編集履歴

3

コメントアウト修正

2020/08/17 20:07

投稿

退会済みユーザー
answer CHANGED
@@ -24,7 +24,7 @@
24
24
  int main(void)
25
25
  {
26
26
  char str1[]="abcdefghijklmn";
27
- char str2[15]={'\0'};// 要素数10は配列が小さいのでての字を出力できない
27
+ char str2[15]={'\0'};// str1の要素数以上(終端文字も含む)なければ全文表示できない
28
28
  int len1, len2;
29
29
 
30
30
  len1 = str_length(str1);
@@ -61,4 +61,6 @@
61
61
 
62
62
  return len;
63
63
  }
64
- ```
64
+ ```
65
+
66
+ 見当違いな回答でしたら申し訳ございません。

2

微修正

2020/08/17 20:07

投稿

退会済みユーザー
answer CHANGED
@@ -24,7 +24,7 @@
24
24
  int main(void)
25
25
  {
26
26
  char str1[]="abcdefghijklmn";
27
- char str2[10]={'\0'};// 配列が小さいので全ての文字を出力できない
27
+ char str2[15]={'\0'};// 要素数10では配列が小さいので全ての文字を出力できない
28
28
  int len1, len2;
29
29
 
30
30
  len1 = str_length(str1);

1

元コードを尊重するためサイズの標準出力部分削除

2020/08/17 20:04

投稿

退会済みユーザー
answer CHANGED
@@ -29,9 +29,6 @@
29
29
 
30
30
  len1 = str_length(str1);
31
31
  len2 = (int)(sizeof(str2)/sizeof(str2[0]));
32
-
33
- printf("len1:%d\n", len1);
34
- printf("len2:%d\n", len2);
35
32
 
36
33
  string_revcopy(str1, len1, str2, len2);
37
34