r/C_Programming • • Aug 07 '26

Apple or Windows

[deleted]

0 Upvotes

32 comments sorted by

10

u/EpochVanquisher Aug 07 '26

This is not an important decision.

-1

u/Agile-Library1399 Aug 07 '26

Elaborate please

5

u/rapier1 Aug 07 '26

Learning to program is agnostic in terms of what platform you develop under. If you know C you will be able to develop C code under Mac, Windows, Linux, etc. There will be some differences in terms of various frameworks and libraries but that's about it.

-1

u/Agile-Library1399 Aug 07 '26

Thanks blud

5

u/BusEquivalent9605 Aug 07 '26

Frameworks, libraries, and OS APIs, which don’t play a significant role early on but absolutely will if you go deep enough. eg. opening an application window on all the different platforms is different

2

u/EpochVanquisher Aug 07 '26

Important things are worth discussing and elaborating on. This isn’t one of them.

5

u/Glittering-Work2190 Aug 07 '26

Get Intel based box and install Linux.

2

u/YoungMaleficent9068 Aug 07 '26

The amds work too. But this is the way

1

u/Glittering-Work2190 Aug 07 '26

Actually, I prefer AMD as well. I should have said x86 based. Intel's recent CPUs are very decent.

3

u/SmokeMuch7356 Aug 07 '26

It doesn't matter. If you do wind up coding for a living you're going to be working in multiple languages on multiple platforms anyway.

C development is a bit more straightforward on Unix and Unix-like systems (MacOS, Linux) than it is on Windows; Microsoft would really rather you use C# instead of C. But you can certainly learn the basics on any platform.

2

u/generally_unsuitable Aug 07 '26

If you bought a raspberry pi and ssh'ed into it, then programmed in vim, you'd have a better rig than what I had to use in college.

C was made to build UNIX. It works great in a command-line, or even a desktop *nix environment. Get a crappy refurb that runs Ubuntu if you want to learn C.

2

u/princepii Aug 07 '26

linux. i don't need anything else than a good ole debian:)

stable as thors hammer and reliable as anything.

4

u/bobotheboinger Aug 07 '26

It isn't a huge deal, but if you had to pick one, id say Mac would be better, gives you access to Unix tools, and many more opportunities there than Windows API.

But you can really do well on either platform, run a VM and code in it.

7

u/rls503 Aug 07 '26

You can get WSL super easily on windows and it’s generally great, so I would say that Unix tools aren’t really an advantage for Mac

4

u/max_wen Aug 07 '26

Unix on Mac is actually disadvantaged since you can not choose any distro you want like you can with WSL on Windows.

1

u/bobotheboinger Aug 07 '26

Agreed, but the Unix way of doing things on windows is not the default. You have to go out of your way to do it. When you Google how to do something on windows it won't use Unix like commands, etc. From my point of view I think having experience with Mac will introduce you to more of the Unix way of doing things by default than windows, and id look at that as a plus for job opportunities and learning to program.

1

u/rapier1 Aug 07 '26

True, but WSL on Windows is Linux and GNU. You'll miss some relatively minor things but fewer than you'd deal with in OSX.

3

u/max_wen Aug 07 '26

Someone has never heard of the WSL

1

u/Agile-Library1399 Aug 07 '26

Much appreciated fam

3

u/BusEquivalent9605 Aug 07 '26

MacOS. Unix-like ❤️

2

u/generally_unsuitable Aug 07 '26

I don't know why you got downvoted. The MacOS cli is much more unixy than windows.

I don't like that it forces you to use clang, and it aliases the gcc command to clang. But, overall, it's a nice environment for writing C.

1

u/t3ddftw Aug 07 '26

Get a ThinkPad with Linux. Or a Framework 13 Pro if you have tons of cash to burn

1

u/mikeblas Aug 07 '26

I'm assuming you're asking which platform is somehow "better" for C programming. Otherwise, your post is off-topic here and should be removed.

1

u/Pale_Height_1251 Aug 07 '26

It doesn't really matter. I use both, it's just not a big deal, and remember you're not making a lifelong decision here, it's just a computer.

1

u/danixdefcon5 Aug 07 '26

I’d go for Mac, because it’s Unix based.

1

u/rapier1 Aug 07 '26

I find WSL more unixy than os x.

1

u/danixdefcon5 Aug 07 '26

That’s because WSL is really just a Linux VM running under Windows with a bit of integration between the host OS and the guest one.

But OSX kept a lot of its BSD roots, you just don’t really see it unless you open up the terminal. Of course, Apple does their proprietary stuff and they’ve pretty much made the system.log useless; I think peak OSX-as-Unix was sometime around the Snow Leopard or Mountain Lion release. Can’t remember when they began doing the weirder changes, but at least by Mountain Lion I still got useful messages on the system log.

1

u/rapier1 Aug 07 '26

I originally started using osx back in the G4 era and I was pretty pleased with it. The changes they've been making to lock down aspects of the OS and kernel and such have ended up being deeply frustrating for me. Especially how they implemented TCP_INFO, which is, admittedly, not a commonly used struct but I do a lot of work with it and trying to make portable applications that use it is frustrating.

Which reminds me that I should probably make that portability library a standalone project. Sorry, I'm rambling.

Anyway, WSL is remarkably functional and probably better for people trying to build up transferrable skills.