Menu
CoddyTech

file sumber

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan C di Coddy. Pelajaran 3 dari 61.

Sejauh ini, kita telah menempatkan deklarasi fungsi di file header, tetapi kode fungsi yang sebenarnya (definisinya) berada di file utama. Langkah berikutnya dalam pemrograman modular adalah memindahkan definisi tersebut ke file sumber (.c files) tersendiri.

Ini membuat struktur tiga bagian yang rapi: header mendeklarasikan fungsi, file sumber terpisah mendefinisikannya, dan main cukup menggunakannya. Begini tampilannya:

// math_utils.h
#ifndef MATH_UTILS_H
#define MATH_UTILS_H

int add(int a, int b);

#endif
// math_utils.c
#include "math_utils.h"

int add(int a, int b) {
    return a + b;
}
// main.c
#include <stdio.h>
#include "math_utils.h"

int main() {
    printf("%d\n", add(5, 3));
    return 0;
}

Perhatikan bahwa math_utils.c menyertakan header-nya sendiri. Ini memastikan definisi fungsi sesuai dengan deklarasinya. Jika keduanya tidak cocok, compiler akan mendeteksi error. File utama hanya perlu menyertakan header untuk menggunakan fungsi tersebut. File utama tidak perlu mengetahui cara kerja add secara internal.

Pemisahan ini menyembunyikan detail implementasi dan memungkinkan kamu mengubah logika fungsi tanpa menyentuh file yang menggunakan fungsi tersebut.

challenge icon

Tantangan

Mudah

Mari buat utilitas matematika sederhana dengan menyusun kodemu ke dalam struktur tiga file yang tepat: file header untuk deklarasi, file source untuk implementasi, dan file main yang menggunakannya.

Kamu akan membuat tiga file:

  • math_ops.h: File header yang berisi deklarasi fungsi untuk dua operasi: multiply dan subtract. Kedua fungsi menerima dua bilangan bulat dan mengembalikan bilangan bulat. Jangan lupa menyertakan include guard menggunakan simbol MATH_OPS_H.
  • math_ops.c: File source yang berisi implementasi sebenarnya dari multiply dan subtract. File ini harus menyertakan headernya sendiri untuk memastikan deklarasi cocok dengan definisi.
  • main.c: File main yang menyertakan header dan menggunakan kedua fungsi untuk melakukan perhitungan.

Fungsi multiply harus mengembalikan hasil perkalian dua bilangan bulat, sedangkan subtract harus mengembalikan bilangan bulat pertama dikurangi bilangan bulat kedua.

Kamu akan menerima dua input bilangan bulat: a dan b.

Di fungsi main, tampilkan hasil kedua operasi pada baris terpisah:

Product: {result of multiply}
Difference: {result of subtract}

Contohnya, dengan input 8 dan 3, outputnya adalah:

Product: 24
Difference: 5

Coba sendiri

#include <stdio.h>
#include "math_ops.h"

int main() {
    int a, b;
    scanf("%d", &a);
    scanf("%d", &b);
    
    // TODO: Panggil fungsi multiply dengan a dan b, lalu simpan hasilnya
    
    // TODO: Panggil fungsi subtract dengan a dan b, lalu simpan hasilnya
    
    // TODO: Cetak hasilnya dalam format:
    // Produk: {hasil multiply}
    // Selisih: {hasil subtract}
    
    return 0;
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler C online