Erlend85 Skrevet 28. juni 2009 Skrevet 28. juni 2009 Hva er det du ikke kan lage i c++ men bare i c og omvendt? Hvis det er noe da.
GeirGrusom Skrevet 28. juni 2009 Skrevet 28. juni 2009 Lite. Det er mulig det finnes flere C compilere for noen prosessorer, men utover det har du like mange muligheter i C++ som C og omvendt.
Arti-Ravnos Skrevet 1. juli 2009 Skrevet 1. juli 2009 Er usikker på om dette er riktig, men hvorfor er det slik at C så godt som alltid velges framfor C++ når man programmerer innebygde systemer?
Giddion Skrevet 2. juli 2009 Skrevet 2. juli 2009 Er usikker på om dette er riktig, men hvorfor er det slik at C så godt som alltid velges framfor C++ når man programmerer innebygde systemer? Min erfaring er at C++ i mye! mindre grad er støttet av kompilatorene. C++ er et veldig komplisert språk i forhold til C og dermed er det verre å lage gode komplatorer. Det ble gjort (minst) et forsøk på å løse dette (Embedded C++), men det ble jo ikke noe av. Det må merkes at jeg snakker om mindre innebygde systemer. I større/middels systemer så er det min erfaring at c++ det som er mest brukt
Arti-Ravnos Skrevet 11. juli 2009 Skrevet 11. juli 2009 (endret) Ok, takker for svar. Forstod det bedre nå. Hvor store systemer snakker vi om når vi kommer til det du omtaler som middels/større innebygde systemer? Endret 11. juli 2009 av Arti-Ravnos
Giddion Skrevet 12. juli 2009 Skrevet 12. juli 2009 Ok, takker for svar. Forstod det bedre nå.Hvor store systemer snakker vi om når vi kommer til det du omtaler som middels/større innebygde systemer? Jeg er usikker selv dessverre og det er nok en svært glidende overgang. Jeg er bare borti små/enkle mikrokontroller styre eller store/kompliserte pc styrte innebygde systemer så jeg mangler alt mellom.
hakonvl Skrevet 14. juli 2009 Skrevet 14. juli 2009 Har så vidt begynt med OOP, men har allerede møtt et problem. main.cpp #include <QtCore/QCoreApplication> #include <QtGui> #include <QMainWindow> #include <iostream> #include <string> #include <cstdlib> #include "console.h" using namespace std; bool cmd = true; int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); console::shell(); return a.exec(); } console.h: #ifndef CONSOLE_H #define CONSOLE_H #include <iostream> #include <string> using namespace std; class console { private: int findCommand(); public: int shell(); }; #endif // CONSOLE_H console.cpp #include "console.h" #include <iostream> #include <string> #include <cstdlib> using namespace std; int console::shell() { string command; while(cmd == true) { cout << "cmd>>" cin>>command; } return EXIT_SUCCESS; } Prosjektet bygger på QT, selv jeg ikke har begynt å bruke QT spesifike funksjoner enda, så bruker da QT Creator og dens compiler. Når jeg kompilerer får jeg bare "C:/Users/Håkon/Documents/QtMainWindow-test/clitest/main.cpp:14: error: cannot call member function `int console::shell()' without object" tilbake. Noen som ser noen umiddelbare feil?
Giddion Skrevet 14. juli 2009 Skrevet 14. juli 2009 Litt usikker på hva du prøver på så du har to løsninger. Du kan få koden til å kjøre igjen ved enten: Gjøre member funksjonen statisk (eks1) eller kalle shell ved først lage en console variabel for så kalle funksjonen fra objektet(eks2). (eks1) console.h: #ifndef CONSOLE_H #define CONSOLE_H #include <iostream> #include <string> using namespace std; class console { private: int findCommand(); public: static int shell(); }; #endif // CONSOLE_H (eks2) main.cpp <snip> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); console konsolen;//< ny konsolen.shell();//< ny // console::shell(); return a.exec(); } Når du har gjort det så vil du få en ny feil ettersom int console::shell() ikke kjenner til cmd... men det vet du sikkert Lykke til
hakonvl Skrevet 14. juli 2009 Skrevet 14. juli 2009 Nah, glemte jo selfølgelig og lage et objekt av det... Takk!
_Ferrari_ Skrevet 28. august 2009 Skrevet 28. august 2009 Kjapt spørsmål.. Akkurat startet med c++, har hatt 4 forelesninger. Skulle prøve å kompilere et eksempelprogram på min Ubunutu installasjon. Skriver da følgende i terminalen g++ eks_01.cpp Får ingen feilmeldinger, men terminalen jobbet i 2 sekunder, og var klar for ny input. Resultatet av kompileringen var kun en fil som a.out ellernoe, og den inneholdt en del svada.. Åssen skal jeg få opp et kjørbart program?
GeirGrusom Skrevet 28. august 2009 Skrevet 28. august 2009 a.out er et kjørbart program (derfor den er grønn i consolen) For å gi den ferdige kompilerte filen et annet navn skriver du for eksempel: g++ eks_01.cpp -o eks01
_Ferrari_ Skrevet 28. august 2009 Skrevet 28. august 2009 Okei, haha.. Det visste jeg jo ikke. Foreleseren bruker Windows vettu, så det er ikkeno opplæring på Linux.
Dead_Rabbit Skrevet 11. september 2009 Skrevet 11. september 2009 Det ble gjort (minst) et forsøk på å løse dette (Embedded C++), men det ble jo ikke noe av. Dæven, det der så jo rimelig fiasko ut: Embedded C++ is a proper subset of C++. The following language features have been removed: Multiple inheritance Virtual base classes Run-time type information (typeid) New style casts (static_cast, dynamic_cast, reinterpret_cast and const_cast) The mutable type qualifier Namespaces Exceptions Templates Her sitter man jo i beste fall igjen med en ganske barebone "C with classes".
_Ferrari_ Skrevet 24. september 2009 Skrevet 24. september 2009 Trenger litt hjelp her nå. Jeg skal konvertere et flyttall som inneholder en tid i sekunder om til formatet "mm:ss:hh" La oss si at min float tid inneholder 74.23, så skal output være 1:14:23. Noen tips om hvordan jeg skal få til det?
NevroMance Skrevet 24. september 2009 Skrevet 24. september 2009 Du kan ta: minutter = tid % 60; sekunder = tid - 60*minutter; timer = minutter % 60; minutter = minutter - 60*timer; dager = timer % 24; timer = timer - 24*dager; Da har du antall sekunder på formen: antall dager, antall timer, antall minutter, antall sekunder.
Matsemann Skrevet 24. september 2009 Skrevet 24. september 2009 Det husker jeg ikke, men da kan du eventuelt bare dele på vanlig måte og konvertere til int.
_Ferrari_ Skrevet 24. september 2009 Skrevet 24. september 2009 (endret) Forresten. Dager blir ikke aktuelt. Formatet "mm:ss:hh" er minutter, sekunder og hundredeler. Timer blir heller ikke aktuelt. Hvordan blir det da? floaten tid inneholder tiden i sekunder altså. Og den skal ut på overnevnte format. Endret 24. september 2009 av _Ferrari_
GeirGrusom Skrevet 24. september 2009 Skrevet 24. september 2009 int sekunder = (int)tid; int minutter = sekunder / 60; sekunder %= 60; int hundredeler = (int)((tid - sekunder) * 100); cout << setw(2) << minutter << ":" << sekunder << ":" << hundredeler << endl;
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå