2行の入力を必要とするプログラムを作成する必要があります。それぞれの入力は不特定の数値で構成され、それぞれを別々のvector(int *)複数の行の複数行を読む(数字が指定されていない)C言語で
文字列を使用して入力を保存し、intに変換することはできません。
それは実際に私は次のコードでのWindowsのためにそれを解決してきた、Linuxの環境には、動作するように持っている:私はLinux上でそれをテストしてみた、少なくとも私にとっては、それはdoesnの
int t,s1=0,s2=0;
char tx;
int* a=(int*)malloc(0);
int* b=(int*)malloc(0);
scanf("%i%c",&t,&tx);
while(tx!='\n')
{
a=(int*)realloc(a,sizeof(int)*(s1+1));
a[s1++]=t;
scanf("%i%c",&t,&tx);
}
a=(int*)realloc(a,sizeof(int)*(s1+1));
a[s1++]=t;
scanf("%i%c",&t,&tx);
while(tx!='\n')
{
b=(int*)realloc(b,sizeof(int)*(s2+1));
b[s2++]=t;
scanf("%i%c",&t,&tx);
}
b=(int*)realloc(b,sizeof(int)*(s2+1));
b[s2++]=t;
仕事。
私は本当にあなたの助けに感謝します、ありがとう!
Cでvoidポインタをキャストする必要はなく、どのような方法でも推奨されていません。それらの役に立たないキャストを取り除くだけです。 – alk
"*動作しません。*"は多かれ少なかれ不具合報告書です。具体的にお聞かせください:あなたは何を期待していますか?何を手に入れますか? – alk
"vector(int *)"これはC++の質問かもしれないと思います... –