私はcに取り組んでいます。以下は私のコードです:
#define _GNU_SOURCE
#include<stdio.h>
#include<stdlib.h>
int main()
{
char* str = NULL;
size_t n;
printf("Enter the string : \n");
getline(&str, &n, stdin);
printf("Initial string is : (%s)\n", str);
return 0;
}
上記のプログラムを実行すると、次の出力が得られます。
Enter the string :
bsalunke
Initial string is : (bsalunke
)
予期しない文字列がstr
ポインターに格納される理由は何ですか (つまり、多くの空白を含む文字列です)。Linuxでgcc 4.1.2バージョンを使用しています