2008-11-05 13 views
11

Przez "wykonanie fragmentu kodu" mam na myśli możliwość napisania kilku linii kodu, uruchomienia i przetestowania go bez konieczności uruchamiania IDE i tworzenia fałszywego projektu.Narzędzia do wykonywania kodu sakwowego

Jest to niezwykle przydatne dla pomagania ludziom z małej próbki kodu bez tworzenia projektu, kompilacji wszystko czysto, wysyłając im fragment kodu i usuwanie projektu.

Nie pytam o najlepsze fragmenty kodu lub edytor snippetów ani miejsca przechowywania fragmentów!

Dla języka C# używam Snippet Compiler.

Dla języka Java używam środowiska Eclipse Scrapbook.

Dla LINQ, używam LINQPad.

Jakieś sugestie dotyczące innych (lepszych?) Narzędzi? na przykład czy jest jeden dla Javy, który nie wymaga rozpalania Eclipse?

Co z C?

+0

związanych: [Czy są jakieś dobre IDE online?] (Http://stackoverflow.com/questions/491721/) –

Odpowiedz

1

czasami chcą spróbować czegoś bardzo krótkie, żeby potwierdzić semantykę. Od utworzenia tymczasowego pliku i umieszczenie w boilerplate trwa dłużej niż 30 sekund, mam ten skrypt:

#!/bin/sh 

body="$1" 
out=$(mktemp /tmp/ccrun-XXXXXX) 
src=${out}.c 
cat > ${src} <<EOF 
#include <limits.h> 
#include <string.h> 
#include <math.h> 
#include <stdio.h> 
#include <stdlib.h> 
#include <stdint.h> 

#define UNUSED __attribute__((unused)) 

int main(int UNUSED argc,char UNUSED *argv[]) 
{ 
EOF 
echo "$body" >> ${src} 
echo -e "return 0;\n}" >> ${src} 
cc -std=c99 -Wall -Wextra ${CCRUN_FLAGS} -o ${out} ${src} -lm 
shift 
echo ${out} "[email protected]" 
${out} "[email protected]" 
#rm ${out} ${src} 

Próbkę wywołania (kod statycznie inicjuje tablicę wskaźników funkcyjnych) wygląda następująco:

$ ccrun 'int f(int a){return a+1;} int g(int a){return a+2;} int (*farr[2])(int) = {f,g}; for (int i=0; i<2; i++) printf("%d %d\n",i,farr[i](i));' 
/tmp/ccrun-6nT4Wo 
0 1 
1 3 

Jeśli chcę wprowadzić niewielkie zmiany, po prostu edytuję wiersz poleceń. Jeśli w wierszu poleceń stanie się niewygodny, edytuję plik tymczasowy , w tym przypadku /tmp/ccrun-6nT4Wo.c. Wiersz poleceń do pliku wykonywalnego można podać po programie (pierwszy argument: ). Plik wykonywalny jest pozostawiony na miejscu, więc można go uruchomić bez ponownej kompilacji . Możesz zrobić coś podobnego dla dowolnego języka .

4

Wypróbuj ideone. Jest w stanie uruchomić Twój kod po stronie serwera w ponad 40 językach programowania, w tym w językach C i Java (jest darmowy do indywidualnego użytku).

Powiązane problemy