C4droid - C/C++ compiler & IDE

C4droid - C/C++ compiler & IDE$2.99

Rated 4.72/5 (2,609) —  Free Android application by n0n3m4


About C4droid - C/C++ compiler & IDE

C4droid is a user-friendly (but powerful) C/C++ IDE + C/C++ compiler for Android.
Basic features:
- Offline C compiler: create your own applications on Android device and run them even without Internet access
- Source code editor with syntax highlighting, tabs, code completion, code formatting, file association and undo/redo
- Export&share your programs as APKs or native executables (for terminal apps)
- No root required (but C4droid can use it for your programs if you want)
- Full ANSI C and ISO C99 support with TCC (Tiny C Compiler) + uClibc
- Git integration
- Customizable GUI, choose where to place tabs and buttons by yourself, themes are also supported.
More features with a free GCC plugin:
- Fully-functional C++ compiler, almost complete C++11 support with GCC compiler
- NativeActivity, Qt, SDL and SDL2 support for GUI
- Debugger with breakpoints and watches
- Makefile support: use the same build scripts as on your PC (BusyBox is included)
- Semi-automatic open-source library porting feature for enhanced programming & education

C4droid is designed to be user-friendy out-of-the-box, but nothing is perfect, so here are some answers for questions that can appear:
How to install C++ support?
C4droid will ask you to install C++ support at first startup and will configure itself in semi-automatic mode.
If you want to do that manually, you need:
0) Enough internal memory OR root rights. C4droid does not require root rights for devices with more than 50MB of free internal memory.
1) Install GCC plugin (C4droid will ask you to install it).
2) Select G++ compiler in C4droid preferences.
3*) Add "using namespace std;" to your program(before int main), use iostream, not iostream.h
Note that if you want to use C4droid as a C compiler, it is better to select GCC, not G++.

How to use SDL, SDL2, NativeActivity and Qt in single-file mode?
Just install SDL plugin and select G++ compiler in C4droid preferences.
Note that C4droid chooses app mode using a very simple source code analysis:
SDL is detected with #include "SDL.h", SDL2 is detected with #include "SDL2/SDL.h", NativeActivity is detected with #include "android_native_app_glue.h", Qt is detected with #include "QApplication"
If you are compiling a single-file Qt app, you must add #include "yoursourcefilenamewithcpp.moc" to the end of source code file also.

How to use Makefiles, multifile projects, etc?
Long-click compile button (or select "compilation settings" if buttons are hidden/moved) and configure current directory to use the mode you want.
Note that C4droid will create .c4droid configuration file when you will press Ok. Some modes (like makefile) require to enter result executable file name, don't forget to do that.
After doing that all use compile and run buttons to build and run your app as regular.

How to build and install libraries?
Almost the same way as regular Makefile building except for that most probably some patching may be required.
Currently tested libraries are gmp(internal memory only),mpfr,mpc,libxml2,neon,sqlite,SDL_gfx(--disable-mmx required).

Which gestures/keyboard shortcuts does C4droid support?
Long-click gestures:
New button: delete current file.
Save button: save as.
Open button: recent files.
Run button: run with arguments.
Compile button: configure current directory.
Tab: close tab.

Keyboard shortcuts:
Ctrl-C, Ctrl-V, Ctrl-X for Copy, Paste and Cut
Ctrl-S, Ctrl-O for Save/Open
Ctrl-Z, Ctrl-Y for Undo/Redo.
Ctrl-L for "go to Line"
Ctrl-F for Find
Ctrl-A for select All
Ctrl-B for Build/compile
Ctrl-R for Run
Ctrl-Space/Ctrl-D for autocompletion (Ctrl-Space may be reserved by Android)

Report bugs at [email protected]

C4droid stands for "c for android" (or "c++ for android").
C4droid is not an online compiler, so it uses real binaries.
Some binaries in APK are licensed under (L)GPL, email me for the source code (Tiny C compiler, GCC, BusyBox, etc.)
Android is a trademark of Google Inc.
Qt is a registered trademark of Digia.

Never Miss An Update!

Follow Android Blip on Facebook / Google+

How to Download / Install

Download and install C4droid - C/C++ compiler & IDE version Varies with device on your Android device!
Downloaded 50,000+ times, content rating: Everyone
Android package: com.n0n3m4.droidc, download C4droid - C/C++ compiler & IDE.apk

All Application Badges

Users love it
For everyone
Android app

App History & Updates

What's Changed
If you face any problems updating on Android 6, reinstall C4droid completely (with plugins)
Terminal defaults hotfix
Make clean for all makefile projects is required after update, this version is binary incompatible with previous!
Added workaround for a recent Google Keyboard bug
Migrated to llvm libcxx, c++14 and c++11 support is now complete
GCC updated to 6.1.0
SDL updated to 2.0.4
Terminal updated
Target API 23
Complete debugger refactoring
Minimal API version is now 8 (libcxx)
More downloads  C4droid - C/C++ compiler & IDE reached 50 000 - 100 000 downloads
Name changed  Name changed! C4droid (C/C++ compiler & IDE) now is known as C4droid - C/C++ compiler & IDE.
More downloads  C4droid - C/C++ compiler & IDE reached 10 000 - 50 000 downloads
Version update C4droid - C/C++ compiler & IDE was updated to version 4.09

What are users saying about C4droid - C/C++ compiler & IDE

by K####:

Perfect tool for mobile programming

by H####:

Thank for developer

by N####:

Great mobile ide

by E####:

So far so good

by C####:

Great compiler, totally worth the price.

by F####:

How do I turn a program into a apk.

by Y####:

The best

by J####:

Very Convenient and this is by far the most valuable purchase I've done.

by R####:

Good for Practice and Learning

by A####:

I understood by your description of this program that how to use c++ mode in c4driod... Thanks n0n3m4

by Z####:

Why can't i use graphics.h library after copying it to the includes folder?? Pls find solution.

by W####:

BUT input method of my Android pad is locked when using TextWarrior syntax highlighting .

by D####:

Nothing has changed, Still using this App!! Absolutely Super Marvelous!! What can I say, this compiler does everything my desktop work PC does! Excellent!!

by V####:

I am not an expert, but app is very good to me,. Plus technical supper response is very quick.

by U####:

Warning: Not for the beginner, and simple questions to the developer went unanswered.

by I####:

Love this app. A real accomplishment. Great support too.

by T####:

C4Droid does the job. It has a good interface, a good sense for the syntax, however compiling can take longer than on Cppdroid.

by L####:

I just cloned a school project and ran it from my phone. Holy Crap it Worked!!!!!!

by S####:

I loved this app in the begining but it wont open .c and .cpp files from my dropbox account anymore

by G####:

I love the app it is great in nearly every way. I'd say 5 star, but I would appreciate if the app would actually auto-complete instead of its programmed method, which is basically manual-"auto-complete". So I must give 5 stars, great app though.

by Q####:

Samsung Galaxy A5 (2016) SM-A510K 6.0.1. EDIT: Thanks I'll do that! EDIT 2: I contacted Ministro and they said to update your application? EDIT 3: Solved! Thank you!

by B####:

Write your own code, compile it.. Excellent app for beginners. You have to install another application for compilation, a kind of add in.

by M####:

no documentation for newbee like how to do graphics, what are the included lib SDL plugin also doesn't work get err include not found

by P####:

I've been learning cpp and this is amazing, I have a question what's the suffix the source files use?? Thanks

by X####:

It's a great app, but it looks like it only compiles the main .cpp file and disregards the rest, meaning that If I have an implementation in a .cpp file different from my main, I need to include the .cpp and .h file which should never be done. Is there actually a way to compile all? EDIT: Gave it 5 star as I've figured out how to it, long press Compile and see the options!

by O####:

Can you add the highlight and comment feature and light stays "ON" if possible. I hope you will build Java compiler+ide soon..

by K####:

I've bought this app back in 2012; hoping it would do what I would like it to. BOY was I impressed! It delivers in so many ways that it makes my complaints menial in comparison. The OP is very responsive to questions; however, the time delay is a bit of an adjustment. It may take several days for a response; but you will get one! However, in my experience, the documentation is rather lacking; for example how do you invoke the debugger? I'm sure it has something to do with gnu build tools (I come from a Windows platform - that's used to the [F9] Breakpoint thing) but I've not figured it out yet....?

by H####:

graphics.h header file is not supported in c4droid.except that its amazing.I give 4...Is there any way? if graphics.h is supported ,it'll be amazing...please try it too...thank you

by N####:

This is a huge problem, makes the application unusable, ive already sent a crash report. Unfortunate, but for some reason this starts happening today, had this app for months.

by E####:

Some wired bugs occur when I use float/double variables. Yes, exactly the same code, running perfectly on my PC but buggy using c4droid. P.S. It is just a very simple calc for calculating POW (using float variables and loop). Only about twenty lines of codes.

by C####:

Works great on my phone tablet, wish it came with a programming oriented keyboard, otherwise it's a perfect fit for my on the go coding!

by F####:

Wow. Just wow! All this capability in a stand alone, carry around computer. I started my C jouney with early Unix. The dreams that many of us had back then have been realized right here. THANK YOU, n0n3m4 !

by Y####:

Would be nice if it had a custom keyboard for coding. There are this two in the play market: Programmer's Keyboard, and Hacker's Keyboard. I highly recommend one of those. Also I just couldn't find undo/redo buttons in the app, Ctrl + z works though (if your keyboard has it). Other than that the app is fantastic. It's the best way to code on the go, especially if you are on the learning stage. 5 stars!

by J####:

Clean interface, excellent support for C. Just a few suggestions- a shortcut above the keyboard for frequently used symbols would be really helpful, the error output window can be made much better and the ability to sync programs with Google drive would be nice. But overall it's the best C compiler for Android that I've come across.

by R####:

Only small thing, the auto Uppercase in every line shout be cancelled. And maybe an onscreen shortcut for curly braces and parenthesis. I need to dig in the keyboard to write it everytime.

by A####:

I'm sure this app works great for most people but it's not very accessible for the blind. I can't read my code, but if that was the only problem I wouldn't mind as I have a good code editor. My main problem is that I can't even access the output of the program when I run it. This makes the app basically useless. If this !blem was fixed then this app would be great.

by Z####:

But there's just one thing which annoyed me: the waste or bad use of screen space... Edit: I don't know if you've read this, but now it looks exactly as I've suggested, and it's just great. Worth its price!

by W####:

This app works fine for all programs I tested.It is great that it supports android 6 permission modelling.This app really has potential to be much more popular.Give the basic version of it free or full version for limited period and when the users start liking it give them in app purchases to unlock all features.This monetisation policy will work better since many users refrain from purchasing an unknown app without using it.

by D####:

Dammit this app is perfect for my needs and I had no problems whatsoever until an Android update this morning. Now it just comes up with something about a package installer then dies. I have re-installed it but same result. I'm still giving it 5 stars though. A brilliant app. I'm just hoping an update from either Samsung or the App's creator will fix the issue..UPDATE: 24 Hours later. Everything working again

by V####:

I have been able to program and run everything with success. one thing you have to keep in mind is the device you have this installed on so (for instance) if your device can only handle Opengl es 2.0, trying to use OpenGL es 3.0 methods probably isn't going to work.

Share The Word!

Rating Distribution

2,609 users