I am Confused wether I can use pinMode() and digitalRead() in C Code

westfw:
The Question is whether and/or how to use them from withing a pure "C project", that doesn't have access to "Arduino.h", doesn't use setup()/loop(), and doesn't know where wiring_digital.c is.

Why would a 'C' program not have access to Arduino.h? Just include it like any other library include. Name the appropriate folders in your Make file. You may have to specify some defines that are provided by the IDE.

Yes, you can use Arduino.h in a pure C app.

Sketch.ino:/* This File Has No Contents */

Functions.c:

#include <Arduino.h>

int main()
{
  init();  // Initialize the Arduino run-time

  pinMode(LED_BUILTIN, OUTPUT);
  
  while (true)
  {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(500);
    digitalWrite(LED_BUILTIN, LOW);
    delay(500);
  }
  return 0;
}