2つの文字列を引数として入力し、それらを結合した文字列を返り値として返す関数を
作成しなさい。
[実行結果]
文字列を入力してください。
1つ目:aaa
2つ目aaaa
Segmentation fault (コアダンプ)
[質問]
なぜエラーが起きるのか?またこの改善方法を教えてください。
c
1#include<stdio.h> 2 3char string(char *,char *);/*プロトタイプ宣言*/ 4 5int main(void) 6{ 7 char str1[100],str2[100]; 8 9 /*文字列の代入*/ 10 printf("文字列を入力してください。\n"); 11 printf("\n1つ目:"); 12 scanf("%s",str1); 13 printf("\n2つ目:"); 14 scanf("%s",str2); 15 16 printf("%s",string(str1,str2)); 17 return 0; 18} 19 20/*関数の定義*/ 21char string(char a,char b) 22{ 23 char c; 24 sprintf(c,"%s%s\n",a,b); 25 return a; 26}
回答2件
あなたの回答
tips
プレビュー