DAFTAR LABEL POPULER PENELITIAN.ID
DAFTAR LABEL POPULER PENELITIAN.ID
Jangan Buka Artikel Ini!
DAFTAR ARSIP POSTING PENELITIAN.ID
DAFTAR ARSIP POSTING PENELITIAN.ID
Linker Bahasa C dan Fungsinya
- Dapatkan link
- Aplikasi Lainnya
/* fungsi main.c */
void swap();
int buf[2] = {1, 2};
int main()
{
swap();
return 0;
}
/* fungsi swap.c */
extern int buf[];
int *bufp0 = &buf[0];
int *bufp1;
void swap()
{
int temp;
bufp1 = &buf[1];
temp = *bufp0;
*bufp0 = *bufp1;
*bufp1 = temp;
}
- Aturan satu: Multiple strong simbol dengan nama variabel sama tidak dibolehkan.
- Aturan dua: Jika diberikan strong simbol dan weak simbol, maka yang dipilih adalah strong simbol.
- Aturan tiga: Jika diberikan banyak weak simbol, pilih salah satu dari weak simbol apapun. Contohnya, misalnya akan berupaya untuk mengkompilasi dan menautkan dua modul bahasa C berikut ini:
/* foo1.c */
int main()
{
return 0;
}
/* bar1.c */
int main()
{
return 0;
}
/* foo1.c */
int main()
{
return 0;
}
/* bar1.c */
int main()
{
return 0;
}
/* foo2.c */
int x = 15213;
int main()
{
return 0;
}
/* bar2.c */
int x = 15213;
void f()
{}
/* foo3.c */
#include <stdio.h>
void f(void);
int x = 15213;
int main()
{
f();
printf("x = %d\n", x);
return 0;
}
/* bar3.c */
int x;
void f()
{
x = 15212;
}
Contoh: Hal serupa juga dapat terjadi jika terdapat dua definisi weak dari x (aturan 3).
/*a.c*/
#include <stdio.h>
void b(void);
int x;
int main()
{
x = 2016;
b();
printf("x = %d ",x);
return 0;
}
/*b.c*/
#include <stdio.h>
int x;
void b()
{
x = 2017;
}
/*a.c*/
#include <stdio.h>
void b(void);
int x = 2016;
int y = 2017;
int main()
{
b();
printf("x = 0x%x y = 0x"
"%x \n", x, y);
return 0;
}
/*b.c*/
double x;
void b()
{
x = -0.0;
}
- 7 Alasan Kenapa Nama Variabel Tidak Diawali dengan Angka pada Bahasa C [klik]
- Cara Inisialisasi Variabel Static dan Global pada Bahasa C [klik]
- 4 Tipe Data Umum yang Digunakan pada Bahasa C [klik]
- Penjelasan Singkat, Fungsi Bool Bahasa C [klik]
- Penjelasan Singkat, Integer Promotion Bahasa C [klik]
- Perbandingan Nilai Float Terhadap Nilai Lain pada Bahasa C [klik]
- 6 Jenis Perbedaan Kebutuhan Tipe Data Long pada Bahasa C [klik]
- Dapatkan link
- Aplikasi Lainnya
Komentar
Posting Komentar
Hubungi admin melalui Wa : +62-896-2514-6106
Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.
Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.
~ Ikatlah Ilmu dengan Memostingkannya ~
Apa yang dimaksud dengan linker?
BalasHapusDalam dunia komputasi atau pemrograman komputer, linker atau editor link adalah program sistem komputer yang mengambil satu atau lebih objek file yang dihasilkan oleh sebuah kompilator atau assembler dan menggabungkannya menjadi satu file baru yang dapat eksekusi oleh mesin berupa file library, atau file objek lainnya.
HapusApa yang dimaksud dengan linker dan loader pada bahasa C?
BalasHapusLinker merupakan objek yang menggabungkan satu atau lebih objek file beserta beberapa kode library yang diubah menjadi beberapa objek baru atau library baru yang dapat dieksekusi.
HapusSedangkan loader merupakan sebuah pembaca kode program yang kemudian mengeksekusinya ke dalam sebuah memori, juga dapat melakukan beberapa penerjemahan alamat dan dapat menjalankan program ataupun menampilkan pesan kesalahan atau error tertentu.
Linker mengambil masukkan kode dari sebuah objek yang dihasilkan oleh kompilator atau assembler. Sedangkan loader mengambil masukkan daril file yang dapat dieksekusi yang dihasilkan oleh linker.
Hapus