回答編集履歴
2
改行削除方法変更
answer
CHANGED
@@ -6,10 +6,10 @@
|
|
6
6
|
int main() {
|
7
7
|
char tmp[] = "0";
|
8
8
|
int i, sum;
|
9
|
-
char buf[16];
|
9
|
+
char buf[16], *p;
|
10
10
|
|
11
11
|
fgets(buf, sizeof(buf), stdin);
|
12
|
-
|
12
|
+
p = strchr(buf, '\n'); if(p) *p = '\0'; //'\n'削除
|
13
13
|
printf("buf=\"%s\"\n", buf);
|
14
14
|
sum = 0;
|
15
15
|
for(i=0; i<strlen(buf); i++) {
|
1
説明追加
answer
CHANGED
@@ -22,4 +22,7 @@
|
|
22
22
|
}
|
23
23
|
```
|
24
24
|
|
25
|
+
> atoi(buf[i])というように各文字列の要素
|
26
|
+
|
25
|
-
|
27
|
+
buf[i] は「文字列の各要素」になります. 文字列の各要素は『文字』ですので, atoi の引数としては適当ではありません.
|
28
|
+
上のコードでは, atoi に文字列として渡すために, (先に1文字の文字列(="0")として初期化している) tmp に一文字ずつ取り出して, それを渡しています.
|