Ich muss über den Unterschied zwischen intrinsischer, Inline- und externer Funktion in C/C++ - Programmierung wissen. Thnx für die Hilfe ^^Unterschied zwischen intrinsisch, inline, extern im eingebetteten System?
Antwort
Intrinsic Funktionen
sind Funktionen, die der Compiler direkt, wenn möglich implementiert stattdessen eine tatsächliche Funktion in einer Bibliothek aufrufen. Zum Beispiel können sie zur Optimierung oder zum Erreichen bestimmter Hardware-Funktionalität verwendet werden.
Für ARM existiert eine intrinsische Funktion (und viele andere), die "__nop()" genannt wird und eine einzige NOP (No Operation) Anweisung einfügt.
Auch die folgenden Links für weitere Informationen
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0205g/Ciabijcc.html
https://en.wikipedia.org/wiki/Intrinsic_function
Externe Funktionen
Teilt dem Compiler, der etwas an anderer Stelle definiert ist, so es doesn t sich beschweren, dass sie undefiniert oder mehrfach definiert sind
Obwohl es fast nie notwendig ist, das Schlüsselwort extern zu verwenden, wenn eine Funktion in C oder C++ deklariert wird, da diese normalerweise standardmäßig verknüpft sind.
Auch die folgenden Links für weitere Informationen
http://www.cplusplus.com/forum/general/21368/
Inline-Funktionen
Inline-Funktionen ist eine Optimierungstechnik durch den Compiler verwendet, insbesondere die Ausführungszeit zu reduzieren . Wenn Sie beispielsweise eine kleine Funktion (nicht als Inline deklariert) mit einem Eingabeparameter haben, rufen Sie diese Funktion mehrmals auf. Der Prozessor wird (unter anderem)
- Speichern der Parameter
- Sprung zur Funktion
- Führen Sie die Funktion
- Speichere das Ergebnis (falls vorhanden)
- Sprung zurück zur vorherigen Position
Wenn stattdessen die Funktion inline war, würde sie die Aufrufanweisung durch den Funktionscode selbst ersetzen und dann kompilieren der Code.
Auch die folgenden Links für weitere Informationen
http://www.cplusplus.com/articles/2LywvCM9/
https://en.wikipedia.org/wiki/Inline_function
http://www.cprogramming.com/tutorial/lesson13.html
Es gibt mehrere Links auf der großen Suchmaschinen.
Während Link-Only-Antworten verpönt sind, zeigt dieser mehr Aufwand als die Op! +1 –
Thnx für Ihre Antwort, aber nicht verstehen, wie intrinsische Funktion zu verwenden? Können Sie mir bitte ein Exempel geben? – SES
@Colin__s So funktioniert das nicht .... Zum Glück wurde die Antwort erweitert –
- 1. Kryptographischer Pseudozufallszahlengenerator im eingebetteten System?
- 2. Verwendung von extern & inline
- 3. Verwendung der ELF-Datei im eingebetteten System?
- 4. Boost im eingebetteten System mit Speicherbeschränkung verwenden
- 5. Unterschied zwischen System und Shell_Exec
- 6. Unterschied zwischen system() und shell()
- 7. Unterschied zwischen "module.exports" und "exports" im CommonJs-Modul System
- 8. Unterschied zwischen einer Inline-Funktion und einer statischen Inline-Funktion
- 9. Javascript Inline-Display-Unterschied zwischen den Browsern?
- 10. Was ist der Unterschied zwischen Verwendung und extern?
- 11. Was ist der Unterschied zwischen `extern int (x) []` und `extern int x []` in C?
- 12. Höhe arbeitet inline, aber nicht extern css
- 13. Abstand zwischen Inline-Elementen im WPF-Textblock
- 14. Was ist der Unterschied zwischen statischem inline void und void?
- 15. Irgendein Unterschied zwischen angular $ inject-Eigenschaft und Inline-Array-Annotation?
- 16. Unterschied zwischen physikalischer Adressierung und virtuellem Adressierungskonzept
- 17. Unterschied zwischen python - getmtime() und getctime() in Unix-System
- 18. Ressourcenverriegelung im eingebetteten Tomcat
- 19. Autocomplete im eingebetteten IPython
- 20. Unterschied zwischen Display: Inline-Flex und Display: Flex
- 21. Fehler im Zeitunterschied zwischen Server und lokalem System
- 22. Unterschied zwischen Web Application Framework und einem Content Management System?
- 23. Was ist der Unterschied zwischen Platten- und Buddy-System?
- 24. Gibt es einen Unterschied zwischen der Initialisierung einer Variablen im Standardkonstruktor oder inline?
- 25. Wo ist Clangs '_mm256_pow_ps' intrinsisch?
- 26. Was ist der Unterschied zwischen Quellkarten im Webpack?
- 27. Zeilenumbruch zwischen Inline-Elementen
- 28. Grid-System und Inline-Block-Abstand
- 29. Unterschied im Verhalten zwischen clang und gcc?
- 30. Unterschied zwischen clearMockModules und removeMockModule im Winkelmesser
Es gibt keine Sprache C/C++. –
und um zu vervollständigen, was @ πάνταῥεῖ sagte, ist der Ausdruck 'C/C++' UB in C und C++. :) –
@ πάνταῥεῖ Sie sagen, dass sich C und C++ in Bezug auf diese spezielle Frage unterscheiden? Wenn sie das nicht tun, sehe ich wirklich nicht die Notwendigkeit, für jede Sprache eine Frage zu haben. –