-
Thread
int to string
-1]; Buffer[i-j-1] = tmp; } Buffer[i] = '\0'; //String wird abgeschlossen return Buffer; } [/c]
STK500-Besitzer schrieb: > [c] > char * Int2String(int zahl) > { ... > char Buffer[size]; .... > return Buffer; > } > [/c] Selbes Problem: return einer lokalen Variablen
-
Thread
ATMEGA2561 SRAM wird knapp
alle String mit PROGMEM festschreiben und dann über Pointer verwenden?
Tendenziell ist es zwei mal im String möglich und einmal am Ende.
-
Thread
C# - Seriel: Hexwert über 127 auslesen
}); } public string ConvertToHex(string asciiString) { string hex = ""; foreach (char c in asciiString) { int tmp = c; hex += String.Format("{0:x2}", (uint)System.Convert.ToUInt32(tmp.ToString())); }
new UpdateCallback(this.UpdateTheTextbox), sp.ReadExisting()); } void UpdateTheTextbox(string s) { foreach (char c in s) { textBox1.Text += c.ToString(); textBox2.Text += String.Format("{0:X02} ", (byte) c); } } } } [/code] DropsMan
-
Thread
Int zu String
hallo, ich benutze einen 16bit ad wandler um Messwerte von einem Sensor einzulesen. die Bits, welche ich vom ad wandler bekomme werden in eine "unsigned int" variable gespeichert. Wie kann ich die diese variable nun in einen "char" umwandeln um sie auf die serielle schnittstelle legen zu können? Programm zum einlesen der einzelnen bits vom ad wandler: unsigned int spi_readData() { int i; unsigned int rByte=0; CS=0; for(i=0;i<16;i++) { rbyte<<=1; rByte|=DIN; SCLK=0; SCLK=1; } CS=1; return rByte; }
-
Thread
Speicher voll durch Multiplikation
ersetzt! Also ich habe das von mir zuerst gepostete Programm genommen und folgendes gemacht: [c]#define PRINT(string, ...) printf_P(PSTR(string), ##__VA_ARGS__)[/c] durch [c]#define PRINT(string, ...) uart_puts_p(string)[/c] ersetzt und komme auf 95% Auslastung, was für mich reicht.
S. G. schrieb: > [c]#define PRINT(string, ...) uart_puts_p(string)[/c] machs Sicherheitshalber so [C] #define PRINT(string) uart_puts_p(string) [/C] dann sucht dir der Compiler raus, wo du nicht einfach
-
Thread
Raspberry Pi C-Programmierung: RS232 Read Problem
lass dir hier [c] printf("Nachricht von TCP/IP Schnittstelle: %s\n",tcpip_buffer); [/c] den String in tcpip_buffer mal so ausgeben [c] printf("Nachricht von TCP/IP Schnittstelle: #%s#\n",tcpip_buffer); [/c]
[/c]
-
Thread
leeren String filtern
[c] (cbxAutomatischeBere.Checked == true && string.IsNullOrEmpty(GlobaleVariablen.Spannung) != true) == true [/c] ich dachte, dass ich mithilfer dieser Bedingung einen leeren String herausfiltern
Εrnst B. schrieb im Beitrag #6375864: > && !string.IsNullOrEmpty(GlobaleVariablen.Spannung) ... [c] !string.IsNullOrEmpty(GlobaleVariablen.Spannung) == true || false [/c] ?
-
Thread
Überprüfung Tastatureingabe Gleitkommazahlen
[C] #include <iostream> #include <string> using namespace std; int _main() { double b = 10.07; std::string input; cout << "b=" << b << endl; bool isNumber = false; do {
Ja, wenn input ein std::string ist. (In C mit einem nullterminierten String geht es ebenso einfach; die Frage ist dort nur ob man das gewünschte Ergebnis erhält. :-)
-
Thread
C versus Assembler->Performance Gesperrt
nicht, (ich wollte im ISR ja auch senden), aber ich sehe schon, welche Richtung das einschlägt... [c] #include "structs.h" #include "Ports.h" #include "LED.h" #include <inttypes.h> #include <avr/interrupt.h> #include <string.h> static uint8_t PS2ReceivedByte; static uint8_t PS2SendByte;
void SetLED3() { PORTD |= (1<<LED3); 87a: 5e 9a sbi 0x0b, 6 ; 11 . . . . [/c] Modul PS2 (V3) [c] #include "structs.h" #include "Ports.h" #include "LED.h" #include <inttypes.h> #include <avr/interrupt.h> #include <string.h> static uint8_t PS2Byte; static uint8
-
Thread
anwendung uart_getc() von fleury
Strings vergleicht man übrigens in C so: [C] #include <string.h> .... .... if( strcmp( Eingabe, "aus" ) == 0 ) { // Eingabe ist gleich dem String "aus" ... [/C] Tu dir selbst
ein Kandidat. Der String "aus" ist nun mal nicht gleich dem String " aus", oder "aus\n". [C] void uart_puts_hex( const char* String ) { char Digits[5]; while( *String ) { itoa( *String, Digits, 16 );
-
Thread
AVR asm code bewerten und kritisieren bitte!
Attila schrieb im Beitrag #1974444: > Aua! Ja das mit den 5HZ stimmt natürlich! > > Was ein "string" ist weiss ich nicht aber das werde ich hier nachlesen > und umsetzen. Ein string ist eine Ansammlung von Textzeichen. "Attila" ist ein String. Er besteht aus den Buchstaben 'A' 't' 't' 'i' 'l
SRAM abgelegt werden soll. Selbiges für die Ausagberoutine lcd_string hole Zeichen über Z ist es 0? ja -> lcd_string_ende Zeichen ausgeben spring nach lcd_string lcd_string_ende: return Z Register
-
Thread
LCD Inhalt regelmässig aktualisieren
Zeile: gehen wir von folgendem fiktiven szenario aus. Ich gebe auf meinem Display folgendes aus: [c]char out[21]; sprintf(out, "Menu1: TEST"); set_cursor(0,1); lcd_string( out ); char bufferuC[21]; strcpy( &bufferuC[0], out); [/c] dadurch steht in meinem bufferuC das was im
void lcd_string_buffer( const char* str ) { while( *str ) lcd_data_buffer( *str++ ); } void lcd_home_buffer() { actLine = 0; actColumn = 0; } [/c]
-
Thread
Drehgeber und Tastenentprellung für Arduino
kompilieren. Wir müssen das aber nicht weiter ausufern > lassen. / und gut ist. ich kann es auch [c] if(strlen_P(MainName)) { uint16_t c_count2=strlen_P(MainName); String Ausgabe_pfad_String=""; Ausgabe_pfad_String.reserve(c_count2+2); char *c_home2=(char*)MainName; Serial.println(c_count2); Serial.println(c_count2+2); c_home2=(char*)MainName; while(pgm_read_byte(c_home2)) Ausgabe_pfad_String += (char)pgm_read_byte(c_home2++); if( (Ausgabe_pfad_String.lastIndexOf
-
Thread
Problem mit winsock
ich schreibe in C, hab mir da eine Funktion definiert. char * readData(int buf) { long byte = recv(sock,data,...) return data[byte]='\0'; } Nur irgendwie ist "data" jetzt immer ein leerer String, obwohl
} Du hast es immer noch nicht. Lies es von meinen Lippen ab: Auf dieser Ebene hast du keine Strings mehr! Hier gibt es nur noch Bytes, keine Strings. Damit aus einer Abfolge von Bytes in C ein String wird, müssen ein paar wichtige Regeln eingehalten werden! Eine davon ist: Sobald ein 0-Byte auftaucht
-
Thread
Excel-Daten mit VB.Net2005 auslesen
Ok, wenn ich folgendes mache Label2.Text = Excel1.Range("C1").Value dann zeigt er mir den korrekten Wert im Label an. Allerdings funktioniert es so nicht: Dim Wert As String = Excel1.Range("C5").Value MessageBox.Show(Wert, "Inhalt der Zelle") Was muss
Schon gut. Dim Wert As String = Excel1.Range("C1").Value MessageBox.Show(Wert, "Inhalt der Zelle") funktioniert doch. Ich hatte bloß die falsche Zelle angegeben (eine ohne Inhalt). *kopfklatsch* Naja, Dummheit ist auch eine
-
Thread
UART Problem mit String
9600 #define UBRR_BAUD ((F_CPU/(16*BAUD))-1) #include <avr/io.h> int zeichen(unsigned char c) { while(!(UCSRC & (1 << UDRE))); // Abfrage ob senden möglich UDR = c; // Senderegister return 0; } void string(char *s) { while (*s) { zeichen(*s); s++; }
9600 #define UBRR_BAUD ((F_CPU/(16*BAUD))-1) #include <avr/io.h> int zeichen(unsigned char c) { while(!(UCSRC & (1 << UDRE))); // Abfrage ob senden mšglich UDR = c; // Senderegister return 0; } void string(char *s) { while (*s) { zeichen(*s); s+
-
Thread
Empfangen mit Interrupt
[200]; //const char dekryptString[14][100]; int i=0; const char dekryptString[200]; [/c] > receive.c: [c] char tempstr[200]; char string[200]; char buffer[200]; unsigned char nextCharPos; int lendekryptString; const char
int lendekryptString; extern const char dekryptString[]; extern volatile unsigned char stringReady; [/C]
-
Thread
Array-Speicher nach LCD-Ausgabe wieder freigeben
:-) [C] void Print_LCD(char *String) { char c; while (( c = pgm_read_byte(String++)) != '\0') { Write_byte_toLCD(c); } } [/C]
heraus ausgeben void DOG_writetext(char *string) { uint8_t c; while (c = *string++) != '\0') { sendbyte( c ); } } ... // Strings aus dem Flash heraus ausgeben DOG_writetext_p( PSTR("*BOS08E-Konfig.*"), 0, 0 );
-
Thread
DCF77 Signalerfassung mit ATMega 328p in C
Hallo Zusammen, ich benötige eure fachmännische Hilfe bei einem Problem mit dem DCF77 Signal bei einem Atmel ATMega 328p. Wie ihr euch denken könnt möchte ich das das DCF77 Signal empfangen. Der neg. Ausgang des DCF77-Sensor habe ich an den INT0 Eingang PD2 am Atmel angeschlossen. Mit einem Interrupt möchte ich nun im Sekundentakt ein Array hoch zählen. Die Signalzustandserkennung mache ich mit einem Timerinterrupt Timer0. Je nach Zustand schreibe ich dann die Werte in das Array. Leider habe ich das Problem, dass der INT0- Interrupt nicht zuverlässig die fallende Flanke erkennt -> meistens wird
-
Thread
static global
Andreas B. schrieb im Beitrag #3296385: > Und dann sind die konkreten > Variablen wirklich Strings mit der Länge, die die Rückgabewerte hatten Ja, wie das getline in C++. Der Punkt ist nur, sind die Ergebnis-Strings komplett auf dem Stack oder auf dem Heap? In C++ ist es immer letzteres (da die
Das war nur nebenbei, der eigentlich Punkt war, dass die Variablen dann die tatsächliche Größe der Strings haben. > Andreas B. schrieb: >> Und dann sind die konkreten >> Variablen wirklich Strings mit der Länge, die die Rückgabewerte hatten > Ja, wie das getline in C++. Der Punkt ist nur, sind
-
Thread
Anzahl buchtaben eines Strings bestimmen
ja, C ist lustig ... char zk[]; ... scanf("%s", zk); ... ich (hab gottseidank keine Ahnung von C) aber IMHO muss man den Speicher reservieren, wohin der eingelesene string soll...
#3013542: >> gabs da nicht schon Standard-Methoden wie .sizeof() oder .find()... > > nö, weil c gar keine Methoden kennt. Aber in der "string.h" gäbe es eine Funktion strlen(). http://linux.die.net/man/3/strlen
-
Thread
Zwei kleine Fragen zu Bascom Do Loop Schleife
Reference = Avcc Start Adc Dim Pause As Word Dim Speed As Word Dim Adc0 As Word Dim S1 As String * 3 'Rot ' Dim S2 As String * 3 'Gruen Dim S3 As String * 3
Reference = Avcc Start Adc Dim Pause As Word Dim Speed As Word Dim Adc0 As Word Dim S1 As String * 3 'Rot ' Dim S2 As String * 3 'Gruen Dim S3 As String * 3
-
Thread
Division mit "krummen" 10
Lothar M. schrieb im Beitrag #4759172: > Was ist da der Unterschied? Man kann auch a, b und c nehmen... Der Unterschied besteht im Programmierstil, der sich in Anlehnung an K&R ergeben hat. Eine Character-Variable bekommt 'c', ein String 's', Pointer vorzugsweise 'p' und 'q' und eine temporäre
wandelt, führende Nullen durch Leerzeichen ersetzt (damit die Position auf dem Display stimmt) und ein °C dranhängt. Dieser Routine muß ich nur den Wert übergeben und bekomme das Ergebnis aufs Display. Wenn ich das erst über itoa, String usw. machen wollte, wäre das deutlich umständlicher.
-
Thread
char array buchstaben einzeln auslesen
--; > } > > lcd_clear(); > lcd_string( string ); > } > [/C] Ist noch früh am Morgen. Das geht auch einfacher (und vor allen Dingen: richtiger) [C] void FlyIn( const char* string ) { uint8_t len = strlen( string ); while( len > 0 ) { lcd_clear(); lcd_string( string + len-- ); _delay_ms( 100 ); } } [/C]
-
Thread
String über Uart empfangen STM32<--->Arduino
ok C/C++ hab ich nicht soviel Ahnung weil ich eher C# / Java programmiere aber das müsste ja dann so ausschauen: [c] string char2string(char * myCharArray) string mystring; //mein string //sollange
} *Buffer = '\0'; //wegen c-string } [/c]
-
Thread
GCC ARM: Problem mit "\n" am Stringende
dieser Welt? Ich würde mal schätzen: Auf diesen ganzen printf/scanf Müll pfeifen. Ist auf einem µC sowieso viel Aufwand für nichts. Eine Routine, die einen String ausgeben kann ist schnell geschrieben und mehr braucht man Low-Level nicht. Maximal das man sich mit sprintf an die Formatiermöglichkeiten
Dort muss nach dem String noch ein \n ausgegeben werden. Tut es das nicht, dann hat der, der das geschrieben hat, geschlampt. Von diesen Funktionen ... > printf.c: puts() => fputs(pStr, stdout) > printf.c: fputs(const
-
Thread
c# problem mit sendkeys
public static extern int SetForegroundWindow(IntPtr hwnd); int ID; public void ProzessErstellen(string Programmname) { Process P = new Process(); P.StartInfo.FileName = Programmname; P.Start(); ID = P.Id; Application.DoEvents(); } public void TextSenden(string Text) { System.IntPtr MainHandle
Eigentlich sollte das funktionieren... Das einzige Auffällige ist folgendes [c] public void TextSenden(string Text) { System.IntPtr MainHandle = Process.GetProcessById(ID).MainWindowHandle; SendKeys.SendWait("{TAB}"); SetForegroundWindow(MainHandle); Application.DoEvents
-
Thread
Kompilieren von C Dateien in Kubuntu
*******************************************************/ void lcd_puts(const char *s) /* print string on lcd (no auto linefeed) */ { register char c; while ( (c = *s++) ) { lcd_putc(c); } }/* lcd_puts */ /***********************************************************
********************************/ void lcd_puts_p(const char *progmem_s) /* print string from program memory on lcd (no auto linefeed) */ { register char c; while ( (c = pgm_read_byte(progmem_s++)) ) { lcd_putc(c); } }/* lcd_puts_p */ /***************
-
Thread
Fleury's Uart, wie string empfangen?
// Sammle solange Zeichen, bis: // * entweder das String Ende Zeichen kam // * oder das aufnehmende Array voll ist if( c != '\n' && StringLen < MaxLen - 1 ) { *Buffer++ = c; StringLen++; //uart_putc((unsigned char)c ); //uart_puts("\n"); //uart_puts("Zeichen empfangen\n"); } if( c == '\n') { // Noch ein '\0' anhängen um einen Standard // C-String daraus
-
Thread
strtok-Funktion mag keine leeren token
Hallo Fange gerade an mit C zu spielen und bin gleich mal über folgendes Problem gestolpert: Wenn ich mit strtok(String, delimiter); folgenden String zerteilen möchte "$PFLAU,0,1,1,1,0,,0,,*63"; stolpert die Funktion über
function should be preferred for portability reasons (it conforms to ANSI X3.159-1989 (``ANSI C89'')) it is unable to handle empty fields, i.e., detect fields delimited by two adjacent delim- iter characters, or to be used for more than a single string at a time.
-
Thread
UART + AT89C51 = sinnlose Zeichenketten
aufmachen,doch ich habe ein weiteres Problem. Diesmal handelt es sich dabei um die Ausgabe eines Strings. Mein C - Programm sieht folgendermaßen aus: [c] #include<C51RB2.h> #include<stdio.h> #include<string.h> const char* string = "-[WELCOME]-"; char x[2]; int laenge; void uart_init
bei deinem string-Array. [c]const char* string[11] = "-[WELCOME]-";[/c]
-
Thread
C# domainupdawn mit timer verbinden
Hallo Wie ist es möglich das ich in den domainUpDown dingens die minuten anzahl für zb timer 9 bekomme und er das auch übernimmt und dann startet? Kutzum ich suche im doainUpDown botton eine zahl aus zb 5 und der timer soll starten und nach 5 minuten event xyz anstossen ? Vielen DANK
-
Thread
Zeiger Array
>> Kompiliert nicht. > > Compiler? GCC, das aktuelle Release (9.2.0) > Flags? g++ -std=c++2a -c test.cpp > vollständiger Code? test.cpp: [c] #include <array> #include <string> const std::array a{"abc"s, "def"s}; [/c]
Die UDL-Ops aus std sind aus gutem Grund in einem extra NS, daher ist [c] using namespace std::literals; [/c] notwendig. [c] #include <array> #include <vector> #include <string> #include <algorithm> #include <iostream> int main() { using namespace
-
Thread
String parsen und zahlen Zahlen per "atoi" extrahieren klappt nicht
stelle stehen. Das klappt auch! > > Allerdings schaffe ich es nicht, die drei Zahlen aus dem String richtig > per "atoi" zu extrahieren. Dann extrahiere sie doch ganz einfach OHNE "atoi". Sowas sollte ja wirklich kein Thema sein. Lade dir einfach die Lernbetty herunter und guck dort in conv.c
Einfacher kannst du aber atoi, der eh beim ersten ungültigen Zeichen aufhört, direkt auf den String loslassen: [c] int parse(char *str) { if (strlen(str) > 16 && str[0] == '*' && str[16] == '#' && str[4] == ',' && str[8] == ',' && str[12] == ',') { int r = atoi(str
-
Thread
Starthilfe - Stringformatierung in C
sitze hier gerade vor meinem ersten kleinen Projekt (ATmega 128 mit AVR-Studio) und möchte nur einen String formatiert auf ein Display bringen, und alleine das bringt mich schon an den Rand der Verzweiflung... Ich bin absoluter Neuling in C, wahrscheinlich ist genau das schon das Problem. Tutorials lesen
Ein String in einer Variablen klingt verdächtig. Vermutlich hast du eine Zahl in einer Variablen die vom Typ Integer ist und willst diese nun formatiert ausgeben. [c] printf("%05f",Variable / 100.0); [/
-
Thread
project euler
mein ansatz war ganz einfach: Zahl in String umwandeln String umdrehen Strings vergleichen ;) [c] bool isPalindromNumber(uint64_t n) { ostringstream ostr; ostr << n; string st; string t = ostr.str(); reverse(t.begin(),
[c]public class prog { public static void main(String[] args) { int Zahl1,Zahl2; int product,biggest = 0; String a,b; for(Zahl1 = 100; Zahl1
-
Thread
Strings, Chars und "...
c ] und [ / c ] eingeschlossen werden (ohne Leerzeichen). [c] String^ signtmp = "\""; array<String^>^ fbnum; array<String^>^ fbname; array<String^>^ fbtemp; char divide; StreamReader^ temp = File
erzeugt das Array (ohne die Strings zu erzeugen) array<String^>^ fbnum = gcnew array<String^>(20); [/C]
-
Thread
C++ Fehler bei der win32 api
mir bitte mit diesen FEhlern weiterhelfen. Vielen Dank schon mal. Hier ist mein Programm: [c] void MyWindow::Messen() { QString dateiname = datei->text(); std::string s1 = dateiname.toAscii().data(); QString name = geraete->text(); std::string s2 = name.toAscii().data
leider nicht, wo ich das einstellen kann > > > Hier gibt der Compiler keinen Fehler mehr. > [c] > hPort=CreateFile(_T("COM1"),GENERIC_READ | GENERIC_WRITE, 0, > NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); > [/c] Alle Win32 Funktionen, die Strings erwarten, gibts in zwei Versionen: die
-
Thread
Visual Studio - Linken von C-Code
Das mit dem C++ gedöns lässt sich nicht reproduzieren. Also zu den Projekteinstellungen: - es ist ein C-Projekt - wird als __cdecl (/Gd) (C-code kompiliert) - es werden keine libs ignoriert bzw. speziell
string ";" (473004h) 00429ACA push offset string "CSV.csv" (472FF8h) 00429ACF call @ILT+1410(_MES_Write_CSV) (426587h) // hier krachts 00429AD4 add esp,1Ch ...sehe ich das
-
Thread
Fehler "Conflicting Types for 'SendChar'"
, ist mir ehrlich rätselhaft. [c] string [/c] Die Variable heisst string [c] string[] [/c] sie ist ein Array .... [c] char string[] [/c] ... ein Array von Charactern (also einzelnen Zeichen) [c]
[[String-Verarbeitung_in_C]]
-
Thread
[C#] Text perfekt zentrieren
liegt das am TextRenderer? Was macht dieser falsch bzw. wie korrigiert man diese Ungenauigkeit? [c] //... Size textsize = TextRenderer.MeasureText(str, font); g.DrawString(str, font, new SolidBrush(forecoler), (textsize.Width + points) / 2, (textsize.Height + points) / 2); //... [/c] str ist
Danke an alle. Der letzte Tipp war Gold wert. So funktioniert es: [c] StringFormat sf = new StringFormat(); sf.Alignment = StringAlignment.Center; sf.LineAlignment = StringAlignment.Center; g.DrawString(i.ToString(), f, new SolidBrush(forecoler), new RectangleF(0,
-
Thread
[C#] Serial Port Abfage fehlerhaft
funktioniert die Auswertung des Empfangsstrings nicht so wie ich mir das vorstelle. Teilweise wird der String falsch empfangen. Einen Fehler der RFM Module schließe ich aus da ich wenn ich den String über ein Terminal Modul sende auch immer richtig zurückkommt. Habe das C# Programm einmal angehängt.
DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) { ReceivedString+= serialPort1.ReadExisting(); List<string> RxStrings = ExtractCompleteLines(); foreach (string RxString in RxStrings) { switch (RxString)
-
Thread
printf-Alternative für AVR
Kramen im Eingemachten lieferte folgende Routine, die einen unsigned analog zu utoa(.,10) in einen String umwandelt. Die Funktion liefert die Adresse der abschließenden '\0' zurück, was sich bei Weiterverarbeitung der Strings u.U. als günstig herausstellt: [c] #include <stdint.h> static const __flash uint16_t pows10[] = { 10000, 1000, 100, 10 }; char* u16_to_string (char *str, uint16_t n) { const __flash uint16_t *p = pows10; uint8_t not0 = 0; uint16_t pow10; do { char c = '0'; pow10 = *p++; while
-
Thread
DCF77 Welches Modul taugt was
diesem den internen Pullup aktivieren). Fertig ist die stets passende Pegelkonvertierung vom Modul zum µC unabhängig von der Höhe der µC Spannungsversorgung.
Sekunden), ein 05, UDR ins Variable B schreiben, UCSRA Bit 7 = 0, 0,033 s Pause, dann ein 0D, in Variable c schreiben, UCSRA Bit 7 = 0. Dann a:b:c auf dem Display ausgeben. Oder habe ich das falsch verstanden?
-
Thread
Absturz beim ESP8266
der gesamten Antwort im RAM zurechtlegen... Wenn dir das Templating zu kompliziert ist: [c] String resp = String(header_html); resp += get_jsdate_fn(); resp += get_html_table(); resp += String(rem_body); resp += String(footer_html); [/c] ist zumindest *etwas* sparsamer.
Überlauf ist schon mal ein Punkt. @ Εrnst B >Wenn dir das Templating zu kompliziert ist: [c] String resp = String(header_html); resp += get_jsdate_fn(); resp += get_html_table(); resp += String(rem_body); resp += String(footer_html); ist zumindest etwas sparsamer. [/c] Diesen Teil
-
Thread
Bascom Serialin
Oh hab was vergessen: Zeile "Dim Input_data As String * 10 At &H600" muss durch "Dim Input_data As String * Uart_input_max At &H600" ersetzt werden. fertiger Code im Anhang Gruß Andreas
sich bei mir GCC und ld; simpler Array-Überflauf a la C führt zum Crash; Bibliothek von Funktionen, die man im Zweifel besser nicht nutzt; Für mich ist das nicht einfacher als C und wenn's nicht reicht, ich sag nur: [c]Messwert = ( ( a & 0xfc ) / 2 ) *
-
Thread
Cast short zu char!
multipliziert, das sollte ja die Anzahl an Bytes sein. Hier mal der Rohbau der Senderoutine: [c] void RS232_OutData(unsigned char *String, unsigned int anzahl){ int i; for (i = 0; i<anzahl;i++){ RS232_OutChar(String[i]); } } [/c]
kann alles mitgegeben werden. [c] void RS232_OutData(void *data, unsigned int length ) { int i = 0; unsigned char *String = data; while ( i < length ) { RS232_OutChar( String[i++] ); } } [/c]
-
Thread
C# list<T> zu XML
[C] public static List<T> DeserializeToList<T>(string path) { List<T> list = new List<T>(); XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<T>)); FileStream str = new FileStream
Bist Du Dir sicher, dass die Zeile Korrekt ist? [c] XmlSerializer ser = new XmlSerializer(typeof(List<USBStick>)); [/c] Müsste das nicht XmlSerializer(typeof(List<T>)) heißen? Gruß Markus
-
Thread
string operationen
lcdlibrary eine Ausgabe zu erhalten. die PF-lib hat die folgenden Funktionen: void lcd_putc(char c); void lcd_puts(const char *s); void lcd_puts_p(const char *progmem_s); #define P(s) ({static const char c[] __attribute__ ((progmem)) = s;c;}) #define lcd_puts_P(__s) lcd_puts_p(P(__s)) Ich
funktioniert schon, Du musst sie nur nur wie dokumentiert einsetzen. lcd_puts() dient zur Ausgabe EINES strings. Willst Du einen dynamischen String ausgeben, musst du ihn zuerst zusammensetzen mit Standart C String funktionen: char buffer[32]; strcpy( buffer, "Teil1-" ); strcat( buffer, "Teil2"
-
Thread
Wieso gibt es keine gute Programmiersprache?
Wold-style-cast -Woverloaded-virtual -Wno-pmf-conversions -Wsign-promo Objective-C and Objective-C++ Language Options -fconstant-string-class=class-name -fgnu-runtime -fnext-runtime -fno-nil-receivers -fobjc-abi-version=n -fobjc-call-cxx-cdtors -fobjc-direct-dispatch
Torsten C. (torsten_c) schrieb: > Aha. Naja, in C# .Net geht das eh nicht ohne (ptr != null). Jein; kommt auf den Kontext an. string s = null; if (s?.Length == 3) { ... entspricht if (s !=