MCPcopy Index your code
hub / github.com/cs50/libcs50

github.com/cs50/libcs50 @v11.0.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v11.0.3 ↗ · + Follow
10 symbols 18 edges 4 files 7 documented · 70%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

CS50 Library for C

Build Status

Development

make: builds dynamic library

make deb: builds source deb

make install: installs the library under /usr/local by default (set DESTDIR to change that)

Installation

Ubuntu

$ curl -s https://packagecloud.io/install/repositories/cs50/repo/script.deb.sh | sudo bash
$ sudo apt-get install libcs50

Fedora

$ curl -s https://packagecloud.io/install/repositories/cs50/repo/script.rpm.sh | sudo bash
$ yum install libcs50

From Source (Linux and Mac)

  1. Download the latest release from https://github.com/cs50/libcs50/releases
  2. Extract libcs50-*.*
  3. cd libcs50-*
  4. sudo make install

By default, we install to /usr/local. If you'd like to change the installation location, run sudo DESTDIR=/path/to/install make install as desired.

Troubleshooting

  1. If, when compiling a program, you see /usr/bin/ld: cannot find -lcs50: Add export LIBRARY_PATH=/usr/local/lib to your .bashrc.
  2. If, when compiling a program, you see fatal error: 'cs50.h' file not found: Add export C_INCLUDE_PATH=/usr/local/include to your .bashrc.
  3. If, when executing a program, you see error while loading shared libraries: libcs50.so.8: cannot open shared object file: No such file or directory: Add export LD_LIBRARY_PATH=/usr/local/lib to your .bashrc.

Close and reopen any terminal windows.

Usage

Link with -lcs50.

#include <cs50.h>

...
char c = get_char("Prompt: ");
double d = get_double("Prompt: ");
float f = get_float("Prompt: ");
int i = get_int("Prompt: ");
long l = get_long("Prompt: ");
string s = get_string("Prompt: ");

// deprecated as of fall 2017
long long ll = get_long_long("Prompt: ");

Documentation

See man get_* after installation, or CS50 Reference!

TODO

  • Add tests.

Contributors

Core symbols most depended-on inside this repo

get_string
called by 7
src/cs50.c
get_int
called by 2
src/cs50.c
get_char
called by 0
src/cs50.c
get_double
called by 0
src/cs50.c
get_float
called by 0
src/cs50.c
get_long
called by 0
src/cs50.c
get_long_long
called by 0
src/cs50.c
teardown
called by 0
src/cs50.c

Shape

Function 10

Languages

C100%

Modules by API surface

src/cs50.c8 symbols
tests/hackerrank.c1 symbols
tests/get_int.c1 symbols

For agents

$ claude mcp add libcs50 \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact