Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

int in char, ohne Umwandlung in ASCII-Zeichen

Frage Entwicklung C und C++

Mitglied: Maik87

Maik87 (Level 2) - Jetzt verbinden

13.03.2007, aktualisiert 23.03.2007, 5076 Aufrufe, 4 Kommentare

Hallo,
folgendes Problem ist gegeben, vllt habt ihr ja eine Idee:

#define ZEILENLAENGE 120

system("mode con cols=ZEILENLANGE");

Klar, ZEILENLAENGE wird nicht ersetzt, weil es in den Anführungsstrichen steht. Bloß wie kann ich es sonst machen?? Eine Verkettung (strcat) geht auch nicht, weil das wohl nur für char ist, meine ZL aber ein int ist. Gibt es auch so einen Befehl der alle Typen kann oder hat wer noch eine andere Idee??
Mitglied: Guenni
14.03.2007 um 19:39 Uhr
@Maik87

Hi,

vielleicht nur 'n Schreibfehler?

#define ZEILENLAENGE 120 <-- mit "AE"

system("... ZEILENLANGE") <-- nur mit "A"

Wenn man mit #define eine Konstante vereinbart, ist das eigentlich schon
ein Typ, der alles kann, da im Quellcode lediglich eine Textersetzung ohne Rücksicht
auf Datentyp vorgenommen wird.

Als Beispiel:

#define MAX(x,y) x<y?y:x

MAX(Ausdruck1,Ausdruck2) gibt den jeweils größeren Wert zurück, egal ob int oder char.

Konstanten vereinbart man normalerweise mit...

const DATENTYP KONSTANTE=WERT

... heißt:

const int ZEILENLAENGE=120;

Wäre, was mir jetzt so einfällt.

Gruß
Günni
Bitte warten ..
Mitglied: Maik87
15.03.2007 um 22:43 Uhr
vielleicht nur 'n Schreibfehler?

#define ZEILENLAENGE 120 <-- mit
"AE"

system("... ZEILENLANGE") <--
nur mit "A"

Nein, war einfach nur in Eile getippt, im Code ist es richtig.

Wenn man mit #define eine Konstante
vereinbart, ist das eigentlich schon
ein Typ, der alles kann, da im Quellcode
lediglich eine Textersetzung ohne
Rücksicht
auf Datentyp vorgenommen wird.

Stimmt, geht aber nur, wenn diese Konstante nicht in einem String, also zwischen zwei Anführungsstrichen, steht. Tut Sie das, überliest der Präprozessor das.


Konstanten vereinbart man normalerweise
mit...

const DATENTYP KONSTANTE=WERT

... heißt:

const int ZEILENLAENGE=120;

Bringt nichts, da der in dem String keine Variablen akzeptiert.


Wäre, was mir jetzt so einfällt.


vielen Dank für deine Mühe.


Ich kann Morgen sicherlich eine Lösung posten, da mein Kollege meint, er habe eine passende Funktion gefunden, die ich Morgen bekomme. Habe mir vorerst wie folgt behofen:

char char_in_int(int ziffer)
{
switch (ziffer)
{
case 1:
return '1';
break;

(...)
}
}
Bitte warten ..
Mitglied: Maik87
22.03.2007 um 17:15 Uhr
hallo nochmal,
folgende lösung ist soooo simpel

int_var=atoi(char_var)

und

char_var=itoa(int_var)

So werden die Zahlen 1zu1 übertragen, ohne dass sie als ASCII-Wert angesehen und umgewandelt werden.
Bitte warten ..
Mitglied: Guenni
23.03.2007 um 19:27 Uhr
@Maik87

Hi,

wieder was dazugelernt. Dank!

Grüße
Günni
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst In txt file an bestimmter Position zeichen ersetzen, Ideen ? (7)

Frage von buliwyf zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch-Befehl oder Windows-Freeware-Tool gesucht zum Wandeln von ASCII in ANSI (8)

Frage von Sinzal zum Thema Batch & Shell ...

Visual Studio
gelöst String bzw Char in Argumentenkette einbinden, möglich? (4)

Frage von PixL86 zum Thema Visual Studio ...

Microsoft Office
Outlook 2013 Kontaktname enthält japanische Zeichen

Frage von xbast1x zum Thema Microsoft Office ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Systemdateien
gelöst NTFS und die Defragmentierung (29)

Frage von WinLiCLI zum Thema Windows Systemdateien ...