クライアントからサーバー…  – プログラミング – Home

クライアントからサーバー... 
 
通知
すべてクリア

[解決済] クライアントからサーバー... 


oi2
 oi2
(@oi2)
ゲスト
結合: 23年前
投稿: 3
Topic starter  

はじめまして oi2というものですが、
今、Winsockでクライアントとサーバーを作ったのですが、
クライアント側から、特殊文字を送ったら、サーバーが、特殊な反応をしめすプログラムを作っ
ています。

そこで質問なのですが、

//クライアント側
send(sock,↑, lstrlen(↑), 0) //特殊文字”↑”を送る

//サーバー側
char buf[256]; // 受信するバッファ
int buf_len; // 受信したバイト数
buf_len = recv(clientSocket, buf, 256, 0);

if(buf==↑)
{
//”↑”で特殊なことをやる部分
}

///

で、if(buf==↑)が動きません。どういうIF文にすれば、クライアントが、”↑”を送ってき
たとき、反応できるIF文が作れるでしょうか?


引用未解決
トピックタグ
tib
 tib
(@tib)
ゲスト
結合: 24年前
投稿: 468
 

if( strcmp(buf,↑)==0 ) かな?

if(buf==↑)は、
bufという配列の先頭要素のアドレスと、↑という一時的な文字列のアドレスを比較して
いることになりますから、比較結果がtrueになることはありません。


返信引用
SS
 SS
(@SS)
ゲスト
結合: 23年前
投稿: 3
 

http://forums.belution.com/ja/vc/000/115/14.shtml

こちらの発言と同じ方だと思いますが(マルチポストの指摘ではありません)
両方の質問内容を見ると、c言語における文字列の扱い方に関する知識が
足りないと思われますので、その辺を勉強しなおしてはいかがでしょうか。
ここがわからないと、今後も同じような場面で詰まると思いますので。

例えば、
http://www.kab-studio.com/Programing/Codian/ の「文字列操作」
http://homepage1.nifty.com/toshio-k/prog/c/ の10, 11番
などを読んでみると幸せになれるかもしれません。


返信引用
oi2
 oi2
(@oi2)
ゲスト
結合: 23年前
投稿: 3
Topic starter  

tibさん、SSさん
ありがとうございました。
if( strcmp(buf,↑)==0 )
で動きました

あと、C言語の勉強もします(^^;


返信引用
oi2
 oi2
(@oi2)
ゲスト
結合: 23年前
投稿: 3
Topic starter  

解決


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました