/*
* Copyright ©2026 Soham Pardeshi. All rights reserved.
* Permission is hereby granted to students registered for University of
* Washington CSE 333 for use solely during Summer Quarter 2026 for
* purposes of the course. No other use, copying, distribution, or
* modification is permitted without prior written consent. Copyrights
* for third-party components of this work must be honored. Instructors
* interested in reusing these course materials should contact the author.
*/
#include <iostream> // for std::cout, std::endl
#include <cstdlib> // for EXIT_SUCCESS
#include "arith.h" // the SAME header, included from C++
using namespace std;
int main(int argc, char** argv) {
cout << Add(2, 3) << endl;
return EXIT_SUCCESS;
}
// Each file is compiled by its own compiler, then linked together.
// Thanks to the extern "C" guard in arith.h, both agree on the symbol
// name 'Add', so the linker matches them:
// g++ -c use.cc # sees extern "C", wants plain 'Add'
// gcc -c arith.c # defines plain 'Add'
// g++ -o use use.o arith.o