Как прочитать файл с исходником на ideone?

117
30 июля 2019, 12:00

Не могу понять, где относительно исполняемого файла лежит файл с исходным кодом.

Пробовал такие варианты: https://ideone.com/K0Xt0A

__FILE__
"./" __FILE__
"../" __FILE__
Answer 1

Итак.

system("ls -laR /home");

вкупе c pwd дает, что наш каталог пуст - только выполнимый prog. Но можно попасть и зацепить в соседнем процесс компиляции - типа

/home/mkgHPB:
total 12
drwxrwx--- 2 root  1000 4096 Jan  8 13:59 .
drwxr-xr-x 5 root  root 4096 Jan  8 13:59 ..
-rw------- 1 20113 1000    0 Jan  8 13:59 ccgHWOGv.o
-rw-rw-r-- 1 root  root  602 Jan  8 13:59 prog.cpp

Т.е. компилируется во временном каталоге в /home, при запуске в нем только prog - какие еще сделать выводы, как не то, что после успешной компиляции исходник убивается? Или все компилируются в /home, и только наш где-то еще? :)

Кстати, прав писать в текущий каталог они не дают, если надо свои файлы написать-почитать - только в /tmp.

Answer 2

Помогу приблизится к поиску:

#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
    system("ls"); #Исполняй линуксовые команды для поиска файла
    return 0;
}

У меня вывод такой:

Успешно #stdin #stdout 0s 15232KB
prog

prog - это уже готовый исполняемый файл. Думаю надо просто хорошенько по папкам походить.

READ ALSO
Как скомпилировть/собрать библиотеку XLNT?

Как скомпилировть/собрать библиотеку XLNT?

Скачал библиотеку xlnt для работы с екселем - https://githubcom/tfussell/xlnt

150
Что не так с объектной моделью в С++? [закрыт]

Что не так с объектной моделью в С++? [закрыт]

Прочитал мнение Линуса Торвальдса о С++:

141
Как вывести символы из массива в lineEdit qt?

Как вывести символы из массива в lineEdit qt?

Есть буквенный массив и нужно из него вывести поочереди букву в lineEditui->lineEdit->setText(); если выводить с помощью setText то буквы будут поочереди заменять...

161
Как вывести из массива по очереди символы в lineEdit?

Как вывести из массива по очереди символы в lineEdit?

Допустим есть массив char arr[] = {'a', 'b', 'c'} и есть LineEdit и нужно из массива по очереди вывести буквы из массиваЕсть счётчик for (int i = 0; i < 2; i++) { /* и здесь...

270