-
Thread
C# Konsolenanwendung über GUI steuern
myProcess.StandardOutput; // Read the standard output of the spawned process. string myString = myStreamReader.ReadLine(); Reader.Text += myString + "\r\n"; [/c] Wenn ich es mit [pre] string myString = myStreamReader.ReadLine(); [/pre] versuche, dann hängt sich
Standardouput lesen, und deine Befehler per Standardinput eingeben, zum Testen würd es wohl sowas tun wie: [c]while(true) { cout << myStreamReader.ReadLine() << endl; }[/c] Die > sind höchstwahrscheinlich die Aufforderung zur Eingabe eines Befehls.
-
Thread
Wie nach 10. Semikolon String einlesen
Hi, wie kann man in C am schnellsten nach 10. Semikolon einen String einlesen. Man könnte z.B. 10-leere while Schleifen nehmen, ist nur redundant :-)
[c] #include <iostream.h> /* g++ -Wno-deprecated -I/usr/include/c++/4.1.3/backward dlm.cpp -o dlm ; dlm ; rm dlm */ void cut ( char const src [/*1 +cpc*/], /* source string */
-
Thread
printf format strings prüfen?
-Wformat und besonders -Wformat-security sind ja nicht verkehrt. Ein nicht-konstanter format string wird dann angemeckert. Seht gut, aber es gibt eine Grauzone, zum Beispiel finde ich, dass diese format strings durchaus konstant sind. Kann ich dem gcc außer "const" noch einen Tipp geben? [c]int
fsopts, uid, uid, timezone / 60L); err = mount (source, default_mnt, fstype, flags, options);[/c] Im nächsten Beispiel ist im Endeffekt auch alles konstant, aber da ist die Warnung wohl unvermeidlich. Gibt es vielleicht "eine lib", mit der ich den format string prüfen könnte? Und wie sage ich
-
Thread
uint32 * uint32 = neg. Zahl ?
Übergabeparameter. Dann kommt bei 900*52 genau der Wert raus. Die Ausgabe am LCD mache ich wie folgt: [c] char string[10]; lcd_gotoxy(0,3); itoa (voltage_electrodes , string , 10); lcd_puts(string); [/c] Für die Ausgabe am Display (4*20 Zeichen mit Standard HD44780 Controller) benutze
Karl Heinz Buchegger schrieb im Beitrag #2266261: [c] sprintf( string, "%4d,%03d V", (int)(voltage_electrodes/1000),(int)(voltage_electrodes % 1000) ); lcd_puts( string );[/c] Soweit ich mich jetzt schlau gemacht habe bedeutet: %4d: d steht
-
Thread
Speicherallokation in Klassen-Methoden
das mit dem Beispiel ist relativ. Es funktioniert ja gar nicht. Beispiel 1: Main-Funktion: [c] int main() { vector<string> * writeBuf = new vector<string>; klasse testklasse; testklasse.testfunktion(writeBuf); } void klasse::testfunktion(vector<string> * buf) { // Füge neuen Leerstring
auch die zu übergebenden Parameter deklariere, funktioniert der gesamte Code! Deklarationen: [c] vector<string> * writeBuf = new vector<string>; char * readBuf = "Beispiel zum testen\r\n"; [/c] Komisch ist halt, dass ich innerhalb der Klassenmethoden in keiner Weise Speicher allokieren
-
Thread
uart Lib - Peter Fleury - kompiliert nicht
can not write the whole string to the circular * buffer */ uart_puts("String stored in SRAM\n"); /* * Transmit string from program memory to UART */ uart_puts_P("String stored in FLASH
Veit D. schrieb im Beitrag #4921821: > Wie fügt man die .c dem Projekt hinzu? Rechte Maustaste auf das 'Source Files' deines Projektes->Add File->uart.c suchen und einfügen. Es ist sinnvoll, uart.h und uart.c in den Projekt Ordner zu kopieren. > na ich
-
Thread
ini File (C Programming)
hallo! ich will mein Program durch ini File konfigurieren,aber Ich habe nie mit ini datei gearbeitet.Meine Frage.Um ini File auszulesen soll ich mit GetPrivateProfileString(WinAPI) anwenden(das steht in MSDN ) oder soll ich die datei öffnen (fopen) und zeilenweise lesen und parsen(fgets,..). Für jede Hilfe bin ich sehr Dankbar. MFG francois
-
Thread
I2C (TWI) Sniffer mit AVR
Zeit wird der ganze Bus lahm gelegt. So sieht die Ausgabe aus: [c] 00000: s I2C-Sniffer: 00578: sp 00578: spp [/c] Was könnte da schief gehn? Gruß Denny
meinen Controllern die Lib von Peter Fleury. > Dort sind ja immer 2 Libs drin, einmal die "twimaster.c" und die > "i2cmaster.S". In der "twimaster.c" steht: [c] "Title: I2C master library using hardware TWI interface" [/c] Also sollte es damit gehen. Peter
-
Thread
Trackbar problem visual c#
Schönen guten Abend allen zusammen, habe wider eine Frage zum Trackbar. Habe einen String, deren Wert der Trackbar entspricht. Code: private void trackBar1_Scroll(object sender, EventArgs e) { string trackbar = Convert.ToString(trackBar1.Value); } Problem ist so: ich ziehe die Trackbar hin und her, der String passt sich sofort an. Ich will aber einen anderen Effekt: ich ziehe die Trackbar hin und her, der String passt sich nur an, wann ich den Mousetaster loslasse. Könnte jamand helfen? Vielen Dank herzlich!
-
Thread
uC für 0,20€ CH552 / CH554 von WCH Billig Micro mit USB Funktion, Chip vorstellung
I also tried splitting debug.c/h into config.c/h delay.c/h uart0.c/h uart1.c/h wdtm.c/h but in the end I wasn't happy with this.
Ray R. schrieb im Beitrag #6790216: > I also tried splitting debug.c/h into config.c/h delay.c/h uart0.c/h > uart1.c/h wdtm.c/h but in the end I wasn't happy with this. yes and that tons of ifdefs are not the best way to handle this problem. This is where a real lib
-
Thread
Zahl umdrehen?
, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8, 0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4, 0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC, 0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2, 0x0A, 0x8A, 0x4A, 0xCA,
-
Thread
C Ende eines Arrays wenn nicht vom Typ Char?
Mit der '\0' wird das Ende der Zeichenkette (String) gekennzeichnet. Das muss nicht das Ende des Array sein. [c]char welt[10] = "Hallo";[/c] Platz für 10 Zeichen (ohne '\0'), belegt sind 6 (mit '\0')
geschlossen?! Das hat mit dem Typ überhaupt nichts zu tun. Es ist einfach nur eine Konvention, das Strings mit \0 abgeschlossen werden. Das ist keine spezielle Eigenschaft vom Typ char. Ich kann auch schreiben: [C] char x[] = { 1, 2, 3, 4 }; [/C] Dann kommt in diesem Array keine Null vor. Das ist
-
Thread
Strings im Flash am LCD ausgeben
Texte jetzt aber mit LCD_Out (Optionen); ausgeben will, bekomme ich folgende Warnung: main.c:444: warning: passing arg 1 of `LCD_Out' discards qualifiers from pointer target type Funktioniert die direkte Ausgabe eines Strings vom Flash ans LCD anders als so? Vielen Dank jetzt schon mal
Programmspeicher_.28Flash.29 http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Vereinfachung_f.C3.BCr_Zeichenketten_.28Strings.29_im_Flash
-
Thread
GPS- Signal über RS232 einlesen (Atmega 644)
Normalerweise ja mit a[2], > geht aber ja nicht wegen meiner Routine. Richtig, weil deine Routine einen String will. Normalerweise baut man eine String Ausgabe so auf, dass die auf eine Zeichenausgabe zurückgreift. Denn ein String ist ja nichts anderes als eine Abfolge von Zeichen. Also kann man einen String
machen. Man kann eine Funktion schreiben, die ein einzelnes Zeichen ausgibt, indem sie es in einem String verpackt und dann den String ausgibt. [c] void unsigned char write_character_to_edip (unsigned char DevAddr, unsigned int x_pos,unsigned int y_pos, char c) { char buffer[2]; buffer[0]
-
Thread
Keil Hardfault STM32 Jlink
angeben. Ungetestet :) Ja, oder man nimmt dann gleich die string-Klasse ala: [c]my_text << "Hallo";[/c] Aber das wäre dann wohl zu einfach für dich oder? mfg
raten: [c]char str[MAX]; snprintf(str, MAX, "bla bla"); [/c] mfg
-
Thread
[Linux] String auf Druckerport schicken
Ich suche nach einer einfachen Möglichkeit möglichst aus einer einfachen C-Funktion (Loadable Extension Function bzw. Virtual Table in der embedded database engine SQLite3) heraus einen String auf den einzigen (bzw. einen bestimmten von mehreren) Druckerport schicken zu können
ganze Seite füllen. Ich habe also die aufbereiteten Daten für eine ganze Seite beisammen in einem String. Doch wie bekomme ich den an den Druckerausgang? Und zwar aus einer C-Funktion heraus!? Alternativ könnte ich die Funktion system("") auch mit einem (mir bisher noch unbekannten) bash-Kommando füllen
-
Thread
AVR GCC - Einfache Stringmanipulation
damit einzelne virtuelle Oszillatoren, deren Frequenz dann jeweils in ein DDS eingelesen wird. [c] void show_vfo(int vfo_num) { char *vfo_str = "VFO "; *(vfo_str + 4) = vfo_num + 65; lcd_put_string(x0 + 2, y0 + 2, vfo_str, 1, DARKBROWN, LIGHTGREEN); } [/c] Angezeigt werden
[c]char *vfo_str = "VFO ";[/c] deklariert einen Pointer auf ein (u.u. nicht beschreibbares String-Literal) Probier stattdessen mal: [c]char vfo_str[] = "VFO ";[/c] Dies deklariert einen beschreibbaren
-
Thread
Initialwert von globalen Variablen zur Laufzeit verwenden
447 1bf bm01a.elf 312 0 105 417 1a1 bm01.elf Die Variante bm01a ist der C-Code. bm01 ist der C++-Code. Das liegt eben daran, dass Du das Array nicht aus dem flash initialisierst, wie bei mit etwa durch den _pgm-String. Die fehlenden zwei Byte kommen daher, dass ich den
Wilhelm M. schrieb im Beitrag #6067728: > Die Variante bm01a ist der C-Code. bm01 ist der C++-Code. Welcher C-Code und welcher C++-Code? > Das liegt eben daran, dass Du das Array nicht aus dem flash > initialisierst, wie bei mit etwa durch den _pgm-String. Und
-
Thread
sprintf ohne '\0'
Ich habe einen C-String, der mit irgendeinem Text befüllt ist. In diesen will ich formatiert hineinschreiben (an eine beliebige Stelle). D.h. ich würde sprintf oder Konsorten dafür benutzen. Leider wird mir ja von
4, "%3d", spg ); sreplace( text, 15, "%3d", strm ); [/c] und das "spreplace" soll mit einem Format String arbeiten, aber das Ergebnis an eine definierte Stelle in den String einbauen. Ja, könnte man machen. Muss man aber selber programmieren. Elegant
-
Thread
LCD Display Off - On - Befehl
Normalerweiße werden die Zeichen weiß dargestellt. Liegt dies eventuell an meinem Code? Auszug: [c]if(flag_ls == 1) { flag_ls = 0; LED_PORT ^= 1<<LED0; lcd_clear(); lcd_setcursor(0,1); sprintf(buffer, "%d", second); lcd_string(buffer); }[/c]
; lcd_clear(); lcd_home(); while(1) { lcd_clear(); lcd_string( "Zahl: "); sprintf(buffer, "%4d", i); lcd_string(buffer); i = i + 1; if( i == 9999 ) i = 0; _delay_ms( 100 ); } } [/C] und dann das ganze ohne den lcd_clear
-
Thread
String-Array löschen
ist hier input ein Array mit der Länge 1. Da passt nur ein Zeichen rein. Wenn das dazu dann noch ein C String mit Nulltermination darstellen soll, passt da nur ein leerer String rein (sprich, nur das Nullbyte). > > //Codeausschnitt > zahler2=0; > do > { > USART_Receive(); > USART_Transmit(
C99). Tipp: Mach die USART_Transmit Funktion so, dass sie ein Zeichen ausgibt (Argument uint8_t), und eine weitere Funktion USART_Transmit_String(uint8_t*) oder so, die dann die Schleife implementiert
-
Thread
Typumwandelung: float <---> char*
; } } void main (void) { .... FloatToString(12.3456,array); .... } [/c] Mit dieser Zeile kann ich dann den float Wert in ein char Array (4 Bytes) kopieren? Welche Header Datei muss ich hierfür noch zusätzlich includen? [c] memcpy(
es in deinem Code machst. > Welche Header Datei muss ich hierfür noch zusätzlich includen? <string.h> In deiner Funktion müßte die Zeile so aussehen: [C] memcpy(buf, &fvalue, sizeof fvalue); [/C]
-
Thread
Atmega8L8 geht mal, mal nicht
adcval = ADC_Read(channel); sprintf(kanal, "%d" ,channel); send_string("c");//99 send_string("X");//88 send_string(kanal);//0=48 1=49 send_string("Y");//89 sprintf (text, "%u", adcval); send_string(text);
Interrupt. Hallo, ok, die Ausgaben sind bzw. waren, um zu sehen ob der Interrupt funktioniert, [c]"channels= atoi(&uart_string[1]);" [/c] ist das einzige was ich hier benötige, das andere fliegt nach dem Test raus. Blockkondensatoren-> ? hab ich genau so verbaut wie im Schaltbild angegeben: http
-
Thread
Unique ID auslesen STM32F4Discovery
(0x1FFF7A10) [..] [/c] STM32Cube_FW_F4_V1.3.0/Projects/STM324x9I_EVAL/Applications/USB_Device/MSC_Standalone/Src/usbd_desc.c: [c] /** * @brief Create the serial number string descriptor * @param None *
Wenn dann richtig: [c] if (StringEqual(user_id,"Dispol")) { account_balance = 10 * abs(account_balance); } [/c]
-
Thread
String-Ausgabe via UART, kurze Frage zum C Code
Du solltest string nicht auf 0 setzen: [c]for (;; string++)[/c] Alles in allem etwas quer, aber sollte passen.
Nachtrag: [c] unsigned int uart_puts(char *string) { for (; *string != '\0'; string++) { uart_putc(*string); } return (0); } [/c]
-
Thread
strcat Problem Nullbyte
: datei=="text.txt" fflush(stdin); strcat(pfad,datei); stream=fopen(pfad,"r"); [/c] Diese letzte Zeile wird nicht ausgeführt, da schon davor bei strcat ein falscher String entsteht. Mein Debugger (GNU GCC Compiler) sagt, dass pfad nach strcat so aussieht: [c]pfad=="C:\\meinPfad
schrieb im Beitrag #1979745: > Im Programm steht natürlich \0. WO steht das in dem Programm? In C-Strings macht "\0" keinen Sinn, da das den String vorzeitig beenden würde. Und das \0 ganz am Ende macht der Compiler von sich aus, und auch sicher korrekt. Und, oben hab ichs schonmal geschrieben
-
Thread
GCC und Raspberry Pi
&parts[0] ist die Adresse des Pointer auf den String. Nicht die Adresse des Strings. Compilerwarnung igmoriert?
den Delimitern haben willst: Wenn du ein Leerzeichen meinst, dann schreib auch 'Leerzeichen'. [c] command[strlen(command)-1] = ' '; [/c] Was es allerdings für einen Sinn haben soll, die String-Terminierung noch mal zu beschreiben, erschliesst sich mir nicht. An der Stelle command[strlen(command
-
Thread
Daten aus Datei einlesen und zeilenweise abespeichern
festzustellen ob das 'Nicht-lesen-können' daraus resultierte, dass die Datei zu ende ist { fgets(string,....)}; will dann > sozusagen irgendwie schreiben zeile[i]= string Strings kann man so nicht umkopieren. http://www.mikrocontroller.net/articles/FAQ#Wie_funktioniert_String-Verarbeitung_in_C
heinz Buchegger schrieb: > Wie gross hast du zeile als 2-dimensionales Array dimensioniert? > > [C] > strcpy( zeile[i++], string ); > [/C] strncpy, bitte. Besser waere natuerlich noch strdup und nur ein Pointerarray.
-
Thread
c# - Hilfe für WoL-Snippet gesucht
ich das ganze in mein Projekt gebastelt habe. Hinweis: die MAC-Adresse ist in config.MACAdress als string so hinterlegt: "00:1C:C0:D1:14:6C" [c] private void DebugBtnWoL_Click(object sender, EventArgs e) { DebugWriteLine("WoL für: " + config.MACAdress);
foreach (byte temp in WOLSignal) { DebugWrite(Convert.ToString(temp)); } } #endregion [/c] Woran kanns liegen? Woran scheitere ich? Ich habe auch das erste mal Wireshark benutzt, evlt. ist mir auch da ein Fehler unterlaufen.
-
Thread
C++ Pointer-To Probleme
schrieb im Beitrag #5665535: > Dominik S. schrieb: >> Ist das was der Erlkoenig geschrieben hat den C++? oder auch "nur" C? > > Das ist "richtiges" C++. Man kann das auch als "C mit cout" bezeichnen. Aber die Aufgabe gibt für C++ nicht mehr her. Das findest du ziemlich schnell bei Strings raus
, da kann man z.B. mit std::string komfortabel arbeiten. Für einen einfachen Einstieg sind wie gesagt Python, Java, ruby o.ä. besser geeignet. Aber C würde ich hier nicht einreihen.
-
Thread
string filtern?
Start- und Stopbits werden von der UART-Hardware verwaltet, die bekommst Du (und auch Dein µC-Programm) nicht zu sehen.
der Übertragungssicherheit, kann man eine Prüfsumme oder ähnliches verwenden. Zum "Filtern" der Strings: Du musst keine ganzen Strings übertragen(Redundanz). Es reicht auch wenn du z.B deine ganzen Informationen in ein Byte gibst und auf die einzelnen Bits zugreifst.
-
Thread
Benutzt ihr sprintf()? Gute Alternative?
Formatstings "%d" oder "%H". In manchen Anwendungen findet man einige hundert derartiger Strings. Nun, ich selber benutze printf und Konsorten eigentlich garnicht. Wozu auch? Bei Delphi auf dem PC hat man sowas nicht nötig und auf nem µC löse ich Textausgaben bereits beim Schreiben auf. Siehe conv.c bei der Lernbetty. Immerhin ist jeder wenigstens einigermaßen sinnvoll geschriebene Ausgabekonverter besser als jede printf Implementierung, weil der String-Interpreter nicht erforderlich ist. W.S
-
Thread
C Pointer frage..
variable global über der main funktion definiere, findet er die variable nicht mehr in einer anderen c datei. die funktionen in der angefügten c datei kann ich aus der main funktion aufrufen aber ich kann die globalen variablen nicht aus der c main datei nutzten. könnte das an dem makefile liegen?
Schreib dieses "extern" mal in die andere C-Datei: extern unsigned char test;
-
Thread
UART Bootloader ATtiny13 - ATmega644
): [pre]:1000000014C02EC02DC02CC05BC02AC029C028C07F :1000100027C026C025C05FC088C022C021C020C024 :100020001FC01EC01DC01CC01BC011241FBECFE5B9 :10003000D2E0DEBFCDBF10E0A0E6B0E0E0E3F2E04A[/pre] Erst ab der 4ten Zeile sind
= 1..4 /Pname Perform Program /Vname Perform Verify /Istring Init string Press any Key ! Für alle, die des englischen und/oder des denkens nicht fähig sind: Fboot.exe /B9600 /C!!!!__PORT_DES_COMPUTERS__!!!! /P!!!!__EXAKTE_ANGABE_DER_HEX_DATEI__!!!! dabei muss
-
Thread
ESP32-Wroom32 und Arduino / C-Code verursacht reset
) { requestDoc["Modus"] = "Off"; } [/c]
ChargingType sieht man den Typ nicht. Könnte ein enum sein. Unten bei der Response ist es klar: [c] responseDoc["Modus"].as<String>() [/c] N. M. schrieb im Beitrag #8068359: > Bei der Wandlung der Response ist es das gleiche.
-
Thread
AVR für wenig Geld im LAN
,3)==0)[/c] Weiter oben muss natürlich noch die Deklaration des Zeitstring-Buffers eingefügt werden: char time_string_Buffer[10]; Vielleicht kann's ja noch jemand gebrauchen...
/rtl8019.c SRC += networkcard/enc28j60.c #SRC += httpd.c telnetd.c ntp.c lcd.c udp_lcd.c wol.c SRC += httpd.c ntp.c lcd.c udp_lcd.c #SRC += http_get.c analog.c sendmail.c SRC += http_get.c analog.c
-
Thread
sekundenzähler mit timer
bitte mal die Dokumentation zu den Ausgabefunktionen an. puts gibt grundsätzlich einen Character-String aus. Und der übergebene Datentyp ist ein Zeiger auf das erste String-Element, also ein "char*". Die Bibliotheksfunktion lcd_putsf erwartet anscheinend aber einen im Flash befindlichen String, so dass
Interrupt Handler und im Hauptprogramm verwendet wird, nicht volatile deklariert ist. Mach aus dem [c] int zaehler = 0; [/c] mal ein [c] volatile int zaehler; [/c] Das "= 0" kannste weglassen, da globale Variablen sowieso automatisch mit 0 initialisiert werden.
-
Thread
programmausgaben in string umleiten
ich starte über ein c++ programm ein weiteres programm. dieses gestartete programm gibt fleissig output in die konsole. diesen output würde ich nun gerne in meinem programm als string verarbeiten. welche möglichkeiten
) { ausgabe.append(s); ausgabe.append("\n"); } textview_buffer->set_text(ausgabe); [/C] folgende anweisung geht aber nicht. dieses mal wird keine shell geöffnet sondern durch das android tool der inhalt eines ordners datei für datei gepushed. [C] std::string s, ausgabe; std::string
-
Thread
Datei-Browser in C++
Sorry, für Windows. Visual Studio C++.
); PathName[Dlg.m_ofn.nFileOffset] = '\0'; WriteProfileString( "App", "LastDir", PathName ); String CompleteFileName = Dlg.GetPathName(); ....
-
Thread
C# Klassendefinition "serialisieren"
du kannst bei c# glaube ich zur laufzeit code compilieren, du könntest alo den quelltext der classen übertragen.
Was Peter sagt triffts ganz gut: Einfach den Quelltext rüberschicken (als Datei oder string) und den vor Ort kompilieren. Funktioniert wunderbar :-)
-
Thread
Flowcode contra "C"
Werbung: : Verbesserte und neue Eigenschaften der Version Flowcode 3 sind: 16-Bit-Arithmetik, Strings und String-Manipulation, .... : Sowas kann C schon von Anfang an. Wenn du nur mal schnell für 1 einziges Mini-Projekt ein Programm hinmalen willst, mag diese "modernste grafische Programmiersprache
eine Art Flow-Code sich in bestimmten Bereichen bestimmt durchsetzen wird :-) Programmiere mit C, C# C++, Assembler, LabView. Gerade LabView ist eine sehr mächtige grafische Programmiersprache die auch seine Berechtigung hat. Gruß Gerhard PS: Lerne C die hilft dir bei allen Lebenslagen
-
Thread
string.h oder cstring.h
meinst du <cstring> ohne .h Das ist halt C++ Standard. Evtl liegt es am benutzten C++ Standard.
:: kann gehen, muss aber nicht (erlaubte optionale Abwärtskompatibilität). Durch ein "using std::string;" am Anfang der Datei kann man sicher gehen, dass auch nur "memset" geht. Dito für die anderen C-Funktionen und auch C-Typen wie size_t (korrekt: std::size_t) in C++. <string.h> statt <cstring> kann
-
Thread
Emails empfangen
Dein Hauptproblem ist die Netzwerkanbindung. Sobald du die gemeistert hat ist der Rest nur noch Strings hin und her schicken. An einem POP Server Mails abholen ist nichts anderes als dem Server einen String (ein Kommando) schicken und der Server antwortet mit einem String zurück. (Angenommen SSL
als Wert einlesen soll. In C ging das ganz einfach: [c]printf("\nGeben Sie Ihr gewuenschtes Datum ein: "); scanf("%d.%d.%d", &tag, &monat, &jahr);[/c] In QB geht das aber nicht so wie ich es mir vorgestellt habe. Ich habe
-
Thread
GPS Daten Umrechnen und ausgeben (float to string)
gerechnet wurde Nun möchte ich die Float wieder per RS232 zum PC Senden die habe ich so versucht: [c] string[0] = (ufLatitude / 100); string[1] = (ufLatitude / 10); string[2] = (ufLatitude / 1); string[3] = '.'; string[4] = (ufLatitude / 0.1); string[5] = (ufLatitude / 0.01); string[6] = (ufLatitude
es sein das hier die Optimierungen von GCC eine rolle spielen? Nein. Aber es kann sein, dass du C lernen solltest. Mach dir eine Funktion [C] void uart_putc( char c ) { while (!(USR & (1<<UDRE))) ; UDR = c; } [/C] und dann noch eine [C] void uart_puts( const char* string )
-
Thread
C: int und *char in void-Funktion einlesen
/004_c_ein_ausgabe_001.htm
bleibt in der Eingabe stehen. Wenn du jetzt den String holst, wird diese (außer dem \n leere) Zeile genommen. Du hast also gar keine Gelegenheit mehr, noch mehr einzugeben. Das sind so die Eigenheiten der gepufferten Eingabe in Standard-C...
-
Thread
UART-Senden fehlgeschlagen
werden, damit das Ganze auch formal zu einem C-String wird. > soll er es auf den Port > ausgeben. Was soll er auf den Port ausgeben? Einen String kannst du nicht auf einem Port ausgeben. Ein String besteht aus mehreren Zeichen. (OK. Man
Ich sagte doch, du benötigst ein char-ARRAY um dort den String zwischenzuspeichern. Wenn du mit String - Verarbeitung in C auf Kriegsfuss stehst, dann solltest du den Ankauf von Literatur in Erwägung ziehen. Das sind absolute C-Grundkenntnisse. Solange du
-
Thread
c#: SerialPort kommt beim Empfang durcheinander
this.comStructure.Handshake; this.serialPort.DataReceived += this.readDataFromSerialPort; this.serialPort.Open(); [/c] Event [c] private void readDataFromSerialPort(object sender, SerialDataReceivedEventArgs e) { if (RXmirror == false) // ignoriere gespiegelte Daten { // warte auf Antwort vom µC RXmirror = true; return; } RXmirror = false; // wenn nicht im return gelandet, dann bereits µC-Daten - setze flag zurück int i = serialPort.BytesToRead; WriteLogFenster(i.ToString()); byte[] rx = new byte[10]; serialPort.Read(rx, 0, 10); string RxData = ""; for (int z =
-
Thread
Kann ich µC con Amtel/AVR in c++ programmieren?
baut C++ ja auf C auf ... da hast'e dich gleich eingearbeitet ... Gruß
Lukas S. schrieb im Beitrag #2702288: > der grund dafür wäre das ich nur in c++ programmieren kann aber die Frage ist ob dieses C++ überhaupt für den µC geht. std::string kannst du schon mal vergessen. Auch für NEW muss du dir selber etwas einfallen lassen. Und wenn du C
-
Thread
UART AT90CAN128-16AU von ALVIDI
*******************************************************************/ /***** FUNKTION SEND_STRING *************************************************/ void send_string(char *string){ while(*string != 0){ //display the string up to the endlabel send_char(*string); //give
********************/ void send_int(unsigned int zahl){ char string[10]; //declaration of char array to save the string itoa(zahl, string, 10); //convert integar -> string send_string(string); //send the string } /********************************
-
Thread
Falsche Anzeige nach Spannungsverlust
// Schreibe $ an erster Stelle des Strings k = k + 1; } } return 0; } [/c] und die verwendeten Funktionen: [c] // Hilfsfunktion zum Initialiseren des LCD-Displays void _E (void) { E_HIGH; delay_us(5
} // Letztes Zeichen einlesen if (bed == 1 && Ch == '$') { [/C] mach hinten an den String EXPLIZIT das \0 Zeichen rein und du hast es mit einem gültigen String zu tun, den du mit strstr untersuchen kannst [C] // Letztes Zeichen einlesen if (bed =