コンソール プログラムを作成しましたが、fp->kind にスペースを入れるとクラッシュします。これが私のコードです。
#include <iostream>
struct fish
{
char kind[40];
float lenght;
float weight;
};
int main()
{
using std::cout;
using std::cin;
fish* fp = new fish();
cout<<"enter the kind of fish: ";
cin>>fp->kind;
cout<<"\nenter the weight of the fish: ";
cin>>fp->weight;
cout<<"\nenter the lenght of the fish: ";
cin>>fp->lenght;
cout<<"\nKind: "<<fp->kind
<<"\nlenght: "<<fp->lenght
<<"\nweight: "<<(*fp).weight;
cin.get();
cin.get();
delete fp;
return 0;
}
スペースを空けなくてもクラッシュしません。
PS imはVisual Studio 2012を使用しています。ここにデバッグ出力があります。
'Project1.exe' (Win32): Loaded 'C:\Users\Dark Vadar\Documents\Visual Studio 2012\Projects\Project1\Debug\Project1.exe'. Symbols loaded.
'Project1.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Cannot find or open the PDB file.
'Project1.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Cannot find or open the PDB file.
'Project1.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Cannot find or open the PDB file.
'Project1.exe' (Win32): Loaded 'C:\Windows\System32\msvcp110d.dll'. Symbols loaded.
'Project1.exe' (Win32): Loaded 'C:\Windows\System32\msvcr110d.dll'. Symbols loaded.
The program '[1848] Project1.exe' has exited with code 0 (0x0).