質問編集履歴
1
charは8バイトでなく1バイトだったので修正したが、まだ動かない。
title
CHANGED
File without changes
|
body
CHANGED
@@ -27,7 +27,7 @@
|
|
27
27
|
scanf("%s",s[i]);
|
28
28
|
}
|
29
29
|
|
30
|
-
qsort(s,n,
|
30
|
+
qsort(s,n,1,cmp);
|
31
31
|
|
32
32
|
for(int i=0;i<n;i++){
|
33
33
|
printf("%s\n",s[i]);
|
@@ -42,7 +42,7 @@
|
|
42
42
|
- [cppreference.com](https://ja.cppreference.com/w/c/algorithm/qsort)によると、qsortは4つの配列を持つ。
|
43
43
|
これの説明を用いて、なぜ自分のコード内のqsortをそう記述したのかを書いてみる。
|
44
44
|
|
45
|
-
`qsort(s,n,
|
45
|
+
`qsort(s,n,1,cmp);`
|
46
46
|
|
47
47
|
1つめの引数:**ソートする配列を指すポインタ**
|
48
48
|
ソートする配列は、自分のソースコードでは`s[10][10]`であるので、`s`とした。
|
@@ -51,7 +51,7 @@
|
|
51
51
|
配列の要素数(=文字列の個数)は入力したnによって変化するので`n`とする。
|
52
52
|
|
53
53
|
3つ目の引数:**配列の各要素のバイト単位のサイズ**
|
54
|
-
charは
|
54
|
+
charは1バイトなので、`1`とした。
|
55
55
|
|
56
56
|
4つ目の引数:**第1引数が第2引数より小さい場合は負の整数値、
|
57
57
|
第1引数が第2引数より大きい場合は正の整数値、
|