extern

    2熱度

    1回答

    目標是允許頭文件「註冊」初始化函數,以便main可以迭代這些函數並調用它們。我偶然發現了一個使用__attribute__的解決方案,但似乎只有GCC(https://stackoverflow.com/a/37082249/7867841)。 // header1.h void myInitializer(){} REGISTER_THIS(&myInitializer); // hea

    0熱度

    2回答

    創建陣列我用extern創建一個數組,但似乎它給我一個錯誤 "undefined reference to `callback_Task'" // test.h typedef struct { uint32_t count; uint32_t total; } callback_task; extern volatile callback_task callback[

    1熱度

    1回答

    請收盤爲重複數據刪除之前編譯C編譯器,閱讀問題&明白爲什麼它是不同的(提示:這是C編譯器) 我有谷歌搜索,並找到許多,很多,如何C函數可以調用C++成員函數的解釋。 它們看起來都與this question的公認答案類似,來自非常高的代表成員。 它說 在頭文件中,把 extern "C" void* MyClass_create() { return new MyClass; } e

    2熱度

    2回答

    我已經在c中創建了兩個文件,即file1.cfile2.c。在file1.c中我寫了 #include<stdio.h> int s=10; void main() { printf("This is file 1"); } 在file2.c中 include <stdio.h> exte

    -2熱度

    2回答

    file1.c中 int add(int a, int b) { return (a+b); } file2.cpp void main() { int c; c = add(1,2); } h1.h extern "C" { #include "stdio.h" int add(int a,int b); } 案例1: 當我包括h1.

    3熱度

    1回答

    此代碼可以編譯和下當前的C標準被很好地定義: static int foo(int); extern int foo(int); 該標準規定,在這種情況下(C11:6.2標識符的0.2的聯繫(P4)): 對於 一個範圍,其中該標識符的先前聲明是可見的與存儲類說明的extern聲明的標識符,31) 如果之前的聲明指定了內部或外部鏈接,則後面聲明中標識符的鏈接 與前面聲明中指定的鏈接 相同。 [

    1熱度

    1回答

    考慮以下情形中一個.cpp文件中定義的全局變量: MYFILE.CPP: const int myVar = 0; //全局變量 AnotherFile.cpp: void myFun() { std::cout << myVar; // compiler error: Undefined symbol } 現在,如果我加extern const int myVar;在Anoth

    0熱度

    1回答

    我是C++的新手。我正在嘗試修改非常複雜的視頻編解碼器代碼,作爲我最後一年的學校項目的一部分。這是我的代碼: 這是我已經聲明瞭三個變量的extern頭文件: yuv.h #include <vector> namespace X265_NS { extern int frameNumber; extern int frameSize; extern std::vector<int>num

    0熱度

    2回答

    我是C++的新手。我正在嘗試修改非常複雜的視頻編解碼器代碼,作爲我最後一年的學校項目的一部分。我已經在另一個線程上詢問過它,但沒有得到任何幫助。這是我的代碼: 這是我已經聲明瞭三個變量的extern頭文件: yuv.h #include <vector> namespace X265_NS { extern int frameNumber; extern int frameSize; e

    0熱度

    3回答

    我嘗試寫一些可繪製在我使用此代碼extornal存儲的Android寫 28476-28476/com.example.usuari.myapplication3 E/XXXXX: eeeee java.io.FileNotFoundException: /storage/emulated/0/paco.png: open failed: EACCES (Permission denied) at