학문적으로는 atoi() 및 scanf() 함수를 직접 작성해야합니다.나만의 scanf 함수 빌드
첫 번째 앱은 매우 간단했지만 두 번째 앱은 문제가 있습니다. 첫 번째
:
int String2Inteiro (char s[])
{
int j;
int i=0;
for(j=0; s[j]!= 0; j++)
{
i=i*10 + s[j] - '0';
}
return i;
}
이제 두 번째로 나는 정지 상태에 관련이 있다고 생각 몇 가지 문제에 봉착했습니다. 첫 번째 시도는 고저를 멈추려 고했습니다.
char dig;
int cont=0;
do
{
dig=getchar();
array[cont]=dig;
cont++;
} while (dig!= '\n');
두 번째 시도했다 :
int counter=0;
char a;
char array[20];
while (a!='\n')
{
a=getchar();
vec[counter]=a;
counter=counter+1;
}
내가 입력이 잘 표현되어 있는지 확실하지 않습니다 또는 내가 '\ 13'(CR의 ASCII 코드)를 사용했다해야합니다. 사전에
감사합니다,
앙드레
어레이에 추가 한 후 정지 문자에 도달했는지 여부를 테스트합니다. – Barmar
네,' '\ n' '이 맞습니다. 그러나 어떤 변환 지정자가 구현되어 있어야할까요? – mafso
참고로,'scanf' 함수 군을 사용하지 않고'scanf'를 엄격하게 준수하는 것은 불가능합니다. 푸시 백 동작을 얻을 수있는 방법이 없습니다 (단, ungetc는 운동 목적으로 사용해야 함). – mafso