Каждый открытый файл имеет связанную позицию. Когда вы читаете (), вы читаете с этой позиции. Например, read(10)
считывает первые 10 байт из вновь открытого файла, затем другой read(10)
считывает следующие 10 байтов. read()
без аргументов считывает все содержимое файла, оставляя позицию файла в конце файла. В следующий раз, когда вы вызываете read()
, читать нечего.
Вы можете использовать seek
для перемещения позиции файла. Или, вероятно, лучше в вашем случае было бы сделать один read()
и сохранить результат для обоих поисков.
Эта ошибка происходит из-за присутствия ":"
. Поэтому это больше не поддерживает пути окон. Необходимо загрузить версию 3.80 и заменить make.exe
в \bin
каталог.
, По-видимому, этому нужно cygintl12.dll
также.
откат на make 3.80 (Geant4)
cd /usr/bin
mv make.exe make_381.exe
wget http://geant4.cern.ch/support/extras/cygwin/make.exe
chmod +x make. exe
install libintl2
из cygwin setup для необходимого cygintl-2.dll