[SUCHE HILFE]Ein Ping Programm und seien tücken!
-
Also ich wollt mir ein kleines Ping programm schreiben damit ich mein Schulnetzwerk mal ablichten kann!
So nun ein Problem!
27 ***\c++\pinger\main.cpp invalid operands of types `const char[6]' and `int' to binary `operator<<'
Hier mein Code
#include <cstdlib>
#include <iostream>using namespace std;
int main(int argc, char *argv[])
{
int sip[3];
int eip[3];
string antwort;
string ping;
cout<<"Bitte geben Sie den ersten IP-Block vom anfang an: ";
cin>>sip[0];
cout<<"\nBitte geben Sie den zweiten IP-Block vom anfang an: ";
cin>>sip[1];
cout<<"\nBitte geben Sie den ersten IP-Block vom ende an: ";
cin>>eip[0];
cout<<"\nBitte geben Sie den zweiten IP-Block vom ende an: ";
cin>>eip[1];cout<<"\nAlso scannen wir von "<<sip[0]<<"."<<sip[1]<<".. - "<<eip[0]<<"."<<eip[1]<<".255.255\nj/n\n";
cin>>antwort;
if(antwort=="j"){
for(int y=0;y!=255;y++){
for(int x=0;x!=255;x++){system("ping "<<sip[0]<<"."sip[1]<<"."<<y<<"."<<x<<" >>c:\ping.txt");<- da ist der wurm
}
}
}else{
system("PAUSE");
return EXIT_SUCCESS;
}
}Ich selbst habe schon gegoogelt etc aber ohne erfolg hoffe ihr könnt einem armen cpp Coder helfen

-
ich befürworte zwar nicht was du damit vorhast, aber das ist deine Sache.
Ich würd nen std::stringstream nehmen:#include <ostringstream> std::ostringstream cmd; cmd << "ping " << sip[0] << "." << sip[1] << "." << y << "." << x << " >> c:\ping.txt"; system(cmd.str().c_str());Mal abgesehen davon, ändere bitte dein Topic. Das du Hilfe suchst ist eigentlich klar, wenn du hier ein Thread aufmachst.
-
Illuminat23 schrieb:
system("ping "<<sip[0]<<"."sip[1]<<"."<<y<<"."<<x<<" >>c:\ping.txt"); //<- da ist der wurmDu kannst nicht einfach den '<<' Operator an der Stelle benutzen, als wenn du ihn für streams benutzen würdest. Bau dir aus den IP-Informationen einen String zusammen, den du dann an die system() Funktion übergibst.
-
wäre doch dann
for(int x=0;x!=255;x++){
string ping="ping "<<sip[0]<<"."<<sip[1]<<"."<<y<<"."<<x;//25
system(ping);//26
}
}
}else{aber da spuckt er wieder lustige fehler aus
25 \c++\pinger\main.cpp invalid operands of types `const char[6]' and `int' to binary
operator<<' 26 C:\\Dokumente und Einstellungen\\Illus\\Desktop\\ogames\\c++\\pinger\\main.cpp cannot convert \std::string' to `const char' for argument `1' to `int system(const char)'Ich mag cpp nicht

-
Mit << schiebst Du etwas in einen Stream, und setzt keine Strings zusammen.
Die Stringkonstante "ping " ist sicherlich kein Stream. Also geht auch der << Operator nicht. Wie es geht hat Dir bluecode bereits gepostet.
-
Illuminat23 schrieb:
Ich mag cpp nicht

Vielleicht solltest du dann:
- es lassen
oder
- dich erstmal mit den Grundlagen beschäftigen, bevor du lustige Ping-Programme für deine Schule schreibst.
Bluecode hat dir schließlich alles geliefert, was du brauchst. Setzt es doch einfach ein und gut.
-
nei nes leigt eher daran das ich in meiner Kompetenten Schule sogut wie nix lerne und ich eigentlich Java Programmiere da ich aber nicht überall JRE habe musste ich umsteigen und in cpp kann ich gerade mal die Grundlagen wie strings etc wobei ich das fach ein halbes jahr hatte...
-
Illuminat23 schrieb:
kann ich gerade mal die Grundlagen wie strings etc wobei ich das fach ein halbes jahr hatte...
Oder auch nicht? Siehe dein Post oben.
Wieso gibst du es nicht einfach in die console ein???