2017-05-08 17 views
3

ASCII文字列/テキストの値が、空白のあるを含むC言語のプログラムを作成しています。プログラムは正常に動作し、スペースを含む文字列の正確なASCII値を与えますが、問題はすべてのASCII値の最後に '10'も表示されることです。Cプログラムの文字列

これは私のコードです:

#include<stdio.h> 
#include<conio.h> 
int main() 
    { 
     char str[100]; 
     int i; 
     printf("Enter a string: "); 
     fgets(str,100,stdin); 
     //scanf("%s",str); 
     printf("String is: %s\n",str); 
     printf("ASCII value in Decimal is: "); 
     for(i=0; str[i]!='\0'; i++) 
     { 
      printf("%d ",str[i]); 
      } 
      printf("\n"); 
    getch(); 
}            

問題とどのようにそれを修正する何を教え、私を助けてください。前もって感謝します。

+2

「10」は改行文字です。 – tkausl

+2

「fgets'のmanページ」(https://msdn.microsoft.com/en-us/library/c37dh6kf.aspx)を読む時です。*「...」改行文字は、文字列に含まれています。* " –

+0

thnx @ xing it worked –

答えて

0

fgetsで文字列を読むときは、入力した文字列が文字列(man page)に含まれています。 \nのASCIIコードは10です。