C/C++ CGIスレッド
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/02/26 08:58ID:GDAQuNNShttp://pc2.2ch.net/test/read.cgi/php/988918264/
C/C++ CGI 専門のスレッドです。
スクリプトを検索できるサイトです。
http://cgi.resourceindex.com/Programs_and_Scripts/C_and_C++/
http://www.cgifiles.com/scripts/cc++/index.shtml
前スレ
http://pc2.2ch.net/test/read.cgi/php/988918264/
0123nobodyさん
04/06/28 18:59ID:???所詮ラインプログラムだし
0125nobodyさん
04/06/29 15:43ID:???0126nobodyさん
04/06/29 18:42ID:iEl5sUlFこれに英文の問題を入れたい場合、Word.jsはどのようにいじれば?
0127大学の宿題だけど意味不明、おしえてけろ
04/07/02 22:30ID:rGD5/XCW2進数の乗算
シフト演算と加算と減算の繰り返しによって2進数の乗算を行う。
条件 一、乗算と被乗算は符号なしの16ビット整数
二、乗算と被乗算以外の変数は32ビット整数
三、シフトは論理シフト(表記方法:左シフトは<、右シフトは>)
例、 X=X<1 Y=Y>1
参考 一、左シフト⇒nビットシフトは(2のn乗)倍になる
二、右シフト⇒nビットシフトは{1/(2のn乗)}倍になる
一般法則 一、乗数の2の0乗ビットが1の時、被乗数をそのまま加算し、
0の時は何もしない。
二、乗数の2のn乗ビットが1の時、被乗数をnビット左シフト
して加算する。0の時は何もしない。
( 開 始 )
|
X = 被乗数
Y = 乗数
Z = 0 ←←乗算結果
|
0128nobodyさん
04/07/02 22:40ID:???0129大学の宿題だけど意味不明、おしえてけろ
04/07/02 22:45ID:rGD5/XCW図形の右90度回転
配列H[Y:1〜7][X:1〜7]は、図のような図形要素が
格納されてます。これを図2のように右に90度回転
した配列要素を配列I[Y:1〜7][X:1〜7]へ作成する。
図1
X軸
1 2 3 4 5 6 7
1■■■■■■■
2 ■
y 3 ■
軸 4 ■ ■■■
5 ■ ■
6 ■ ■
7■■■■■■■
図2
x軸
1 2 3 4 5 6 7
1■ ■
2■■■■ ■
3■ ■
4■■■■■■■
5■ ■ ■
6■ ■ ■
7■ ■
0131nobodyさん
04/07/03 11:52ID:???if($ENV{'HTTP_ACCEPT_ENCODING'} =~ /gzip/ && $gzip ne ''){
print "Content-type: text/html;charset=Shift_JIS\n";
if($ENV{'HTTP_ACCEPT_ENCODING'} =~ /x-gzip/){
print "Content-encoding: x-gzip\n\n";
}else{
print "Content-encoding: gzip\n\n";
}
open(STDOUT,"| $gzip -1 -c");
}else{
print "Content-type: text/html;charset=Shift_JIS\n\n";
}
これのC版はどうすればいいんですかね・・・?
0132nobodyさん
04/07/03 11:53ID:???0133nobodyさん
04/07/05 15:51ID:/46odsg/データの取得の方法が分からんのよ。
if ( strcmp(method, "POST") == 0 ) {
// コンテンツ長の取得
contentLength = getenv("CONTENT_LENGTH");
// バッファサイズの判定
if( atoi(contentLength) > LINE_BUFFER ) {
// バッファサイズエラー
exit(0);
}
fgets(Data, (int)contentLength, stdin);
}
これじゃDataには入らないの?
0134nobodyさん
04/07/05 16:25ID:???0135nobodyさん
04/07/05 16:27ID:???>これじゃDataには入らないの?
http://www2k.biglobe.ne.jp/~motoi/cdecgi02.html
参考になるかも。
アップロードの場合、
getenv("CONTENT_TYPE")がapplication/x-www-form-urlencoded
じゃなくて、multipart/form-data; boundary=----------hogehogeohogehoge
ってなってるはずだから読み込んだデータを分離する必要あるんじゃない?
0136nobodyさん
04/07/05 18:14ID:/46odsg/>ってなってるはずだから読み込んだデータを分離する必要あるんじゃない?
色々と試した結果、データ分離前まではできました。
分離させんの大変そうだなぁ。
0137nobodyさん
04/07/05 18:16ID:???0139nobodyさん
04/07/05 20:15ID:???0140いいあるなら
04/07/05 21:12ID:???0141138
04/07/05 21:38ID:???, -‐−-、 ヽ∧∧∧ // |
. /////_ハ ヽ< 釣れた!> ハ
レ//j け ,fjlリ / ∨∨V ヽ h. ゚l;
ハイイト、"ヮノハ // |::: j 。
/⌒ヽヾ'リ、 // ヾ、≦ '
. { j`ー' ハ // ヽ∧∧∧∧∧∧∨/
k〜'l レヘ. ,r'ス < 初めてなのに >
| ヽ \ ト、 ヽ-kヾソ < 釣れちゃった!>
. l \ `ー‐ゝ-〈/´ / ∨∨∨∨∨∨ヽ
l `ー-、___ノ
ハ ´ ̄` 〈/‐-、
0142nobodyさん
04/07/05 22:36ID:???0144nobodyさん
04/07/06 08:43ID:LzoVUw8w知らない人の手助けでもせんと
このスレの意味ないじゃん
0145nobodyさん
04/07/06 09:27ID:???% man 3 fread
% man 3 fgets
0146nobodyさん
04/07/06 10:28ID:???0147nobodyさん
04/07/06 11:39ID:???マルチで申し訳ないですが再度書き込まさせていただきます。
この度RedHat7.3(@)からRedHat9(A)へ移行したのですが、
@で問題なく動作していたCGIがAの環境で一部動作しなくなりました。
//環境
@RedHat7.3
gcc-2.96-113
apache-1.3.27-2
ARedHat9
gcc-3.2-2-5
httpd-2.0.40-21.9
原因を調べていくとどうも日付計算部分がエラーを起こしているようです。
一般的な日付計算ですが何が問題なのか検討もつきません。
(ググッたのですが・・わかりませんでした。。gccが原因??)
どなたか教えていただけないでしょうか?よろしくお願いいたします!!
※apache1.3.31でも同様の現象がおきました。。。
/*-----ソース一部抜粋------*/
#include <stdio.h>
#include <time.h>
struct tm*ptr;
time_t lt;
intNowYY, NowMM, NowDD;
lt = time(NULL);
ptr = localtime(&lt);
NowYY = ptr->tm_year + 1900;
NowMM =ptr->tm_mon + 1;
NowDD = ptr->tm_mday;
/*----------------------*/
0148nobodyさん
04/07/06 11:42ID:???0149147
04/07/06 11:50ID:???apacheのエラーログを見ると”premature end of script headers”と出ているので
どうもhtmlに出力時にCGIが死んでる見たいです。
同じ現象が出ている人も多いと勝手に思ってるのですが、私だけなんでしょうか??
ググっても perlのことばかりなんで・・・・
0151nobodyさん
04/07/06 12:03ID:???釣られちゃったよ orz
0152nobodyさん
04/07/06 12:07ID:NBQAU1O/使えます?使ってる人いますか?
0153nobodyさん
04/07/06 12:19ID:???0154152
04/07/06 12:23ID:NBQAU1O/なんで?なんでアホなの??
サーバーがパースしてくれないから絶対使えないの??
0155nobodyさん
04/07/06 12:25ID:???0156152
04/07/06 12:27ID:NBQAU1O/0157nobodyさん
04/07/06 12:29ID:???0158152
04/07/06 12:33ID:NBQAU1O/このスレジャン
0159nobodyさん
04/07/06 12:38ID:???0160152
04/07/06 13:20ID:NBQAU1O/知らないんだろ?w
0161nobodyさん
04/07/06 13:28ID:???0162152
04/07/06 13:30ID:NBQAU1O/0163nobodyさん
04/07/06 13:31ID:???0164152
04/07/06 13:34ID:NBQAU1O/0165147
04/07/06 13:41ID:???ネタじゃないんですよ。。本気で悩んでます。。
>>152さん
SSIを使いたいというのはよくわからんのですが
特定のHTMLの一部分に数値等を表示させたいということでいいんですか?
0166nobodyさん
04/07/06 14:01ID:???0167152
04/07/06 14:11ID:NBQAU1O/<!--#include file="他のファイル.html" -->を使って他のhtml
ファイルを取り込んでブラウザーに出力できないかなって思ったんです。
SSIってhttpdがファイルをパースして結果を置き換えますよね・・・
なんで出力をパースさせればいいのかな??
CGIからの出力をパースさせるのはhttpdの設定(apacheなんでhttpd.conf)??
なんて考えてたんですけど実際はどうすればいいのかわからないので
質問してみたんです・・・・・
0168nobodyさん
04/07/06 14:28ID:???0169152
04/07/06 14:35ID:NBQAU1O/はあ?どこがわかってねえっていうんだよボケ!
つーかどこが理解してないかいえねえだろ?
トリアエズくだらねえツッコミばっか入れてるキモイてめえはこんりんざいだまってろ
アホ。
0170nobodyさん
04/07/06 14:38ID:???己の無知に気がついていない
0171152
04/07/06 14:45ID:NBQAU1O/0172nobodyさん
04/07/06 14:50ID:???0173nobodyさん
04/07/06 15:00ID:???http://www.sweetnote.com/images/5604972680f574242200eccb0dc39af4.jpg
http://www.sweetnote.com/images/549af04143a8f0a1c24a5c1826ab3234.jpg
0174152
04/07/06 15:03ID:NBQAU1O/172みたいなどうしようもない負け犬がわんわん吠えると
とたんに堕スレになっちゃうな。
0177黒死犬 ◆EgxBlf8nvc
04/07/06 16:45ID:???0178fff
04/07/06 16:50ID:???http://httpd.apache.org/docs/misc/FAQ-F.html#ssi-part-iii
という感じで、"You can't."だと。しかし、
This is a feature The Apache Group hopes to add in the next major release after 1.3.
で、付加される機能かも知れない。知らないが。
0180179
04/07/06 17:08ID:???おそらく問題は他にある。
0181黒死犬(魚かも) ◆EgxBlf8nvc
04/07/06 17:18ID:???プログラムが出力してる内容を見れば良いだけじゃない・・・
0184黒死犬(魚かも) ◆EgxBlf8nvc
04/07/06 17:22ID:???でしゃばってすまぬ
0185nobodyさん
04/07/06 17:22ID:???0186nobodyさん
04/07/06 17:32ID:???はい終了。
方法はあるけど152みたいなやつには教えん。
0187nobodyさん
04/07/06 17:40ID:???でも完全にスレ違いの話題だな
>>152はこんなところで煽ってる暇があったら自分で調べろよヴォケ
0188147
04/07/06 17:58ID:???アドバイスありがとうございます。
プログラムの内容は、
@入力フォームのhtmlの数値を取り込み計算
A計算結果画面のhtmlに計算結果数値を埋め込んでいく
という一般的なものなんです。
Time関数を使用している箇所を除くと表示できるのですが。。
187さんの言うとおりapacheの問題かもしれませんね。2.0.50で試してみます。
スレ違いで申し訳ありませんでした。
0189nobodyさん
04/07/06 18:02ID:???シェル上で擬似的なパラメータを渡してテストとかしないの?
>Time関数を使用している箇所を除くと表示できるのですが。。
そこまでわかっているのなら簡単なサンプルでデバッガのお世話
になるとか?
0191nobodyさん
04/07/06 18:19ID:???>>187はSSIのことね
CGIが出力したSSIが動くということ
>>147は>>189タンの書いた通り
まずコマンドラインから実行できるかどうかチェックすべき
あとは、ヘッダを出力する前に落ちているのであれば
原始的な方法だけど、ヘッダを出力する場所を変えてみるとか
最初にヘッダを出力した場合動くかどうか
0194152
04/07/07 08:18ID:Zb/loxvwそうですよね・・・SSIにこだわる理由はないですね・・・
冷静に考えたらオーバーヘットもあるしSSIを出力する意味ないですよね。
素直にCでパースします。ありがとうございました。
>>俺様に暴言を吐いた有象無象ども
おめえら使えねえんだよ、アホ。
たいした知識でもねえのに出し惜しみするチンカスは一生すっこんでろボケ。
0195nobodyさん
04/07/07 09:28ID:???0196152
04/07/07 10:55ID:Zb/loxvw出来たけどお前には教えない(プ
0197nobodyさん
04/07/07 16:01ID:???言い返せないけど負けは認めたくない
→ ( ´,_ゝ`)プッ
→ 無知白痴は黙ってろ
→ 知能障害をおこす
→ 出来たけどお前には教えない(プ ←>>152
0198nobodyさん
04/07/08 02:16ID:???0199nobodyさん
04/07/08 04:04ID:???0200nobodyさん
04/07/08 10:26ID:073/5w7j変なのが湧いてくるのは仕方がない。
Cの入門者用に掲示板程度のサンプルを提供するのは意味があるかもしれんが
それ以上の高機能なものは大人しくperlかPHPで作ればいいんです。
CでCGIを開発出来ても誰も誉めてくれないし一銭にもならないのではないか?
,.. -―-- |
,.' ´ ``´  ̄ ``. .|
,. '´ , 、 .|
/ , l i ヽ \ .|
/ ./ /,' !ヽ ヽ ヽ. ヽ.|
/ / ./ l _⊥ヽ‐ヽ、'T''| |って書き込んだらC信者が何人か釣れるのカナ?
{{ | | レ'! ヽ\_\,,-,‐-.|
l l l | | |/Tハ |::f;;}||
!ヽN |、 | !` l:リ} ‐'‐'.|
`!ヽN ヽ" `ー .|
| | | `i - ..,.. '´''.|
! ! l,-┴/ハ |
ヽ N,. '´,.=El=、、/|
0201nobodyさん
04/07/08 13:45ID:???言い返せないけど負けは認めたくない
→ ( ´,_ゝ`)プッ
→ 無知白痴は黙ってろ
→ 知能障害をおこす
→ 出来たけどお前には教えない(プ ←>>152
→ 釣りを始める ←>>200(>>152)
0202nobodyさん
04/07/08 19:05ID:???bool urldecode(std::string &s){ //省略。}
struct form_pair
{
string name;
string value;
};
istream &operator >>(istream &is,form_pair &fp)
{
string s;
getline(is,s,'&');
if(is.fail() || is.bad())
return is;
string::size_type pos = s.find('=');
if(pos == string::npos)
{
fp.name = s;
fp.value = "";
}
else
{
fp.name = s.substr(0,pos);
fp.value = s.substr(pos+1,s.length()-(pos+1));
}
if(!(urldecode(fp.name) && urldecode(fp.value)))
{
is.setstate(ios::failbit);
}
return is;
}
typedef istream_iterator<form_pair> urldecode_iterator;
0203nobodyさん
04/07/08 20:14ID:???0204nobodyさん
04/07/08 21:03ID:???0205nobodyさん
04/07/09 13:27ID:???0207名無しさん@そうだ選挙に行こう
04/07/11 17:20ID:8T5rEfNaReportBoardのCGIは何処のCGIですか?
似たCGIでもいいです。
わかる人がいたら教えてください。
0208名無しさん@そうだ選挙に行こう
04/07/11 17:34ID:???板違い
0209nobodyさん
04/07/18 23:47ID:???0210C言語がイイよね?
04/07/28 23:38ID:UZklF3eT文字列の中で2バイト文字だけ判別して
判別した文字を16進数にキャストしてやれば
出来ると思うのですが、具体的なコードが浮んできません。
ウマイコードあったら参考にさせてください。
0211nobodyさん
04/07/29 05:58ID:???ここ↓の
ttp://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/CCGI/index.html
「FORMデータの処理」「漢字コードの処理」を参考にしてまつよ。
他にも検索すれば出てくると思う。
0212GROAD ◆4C1MajRa36
04/07/31 11:59ID:???0214nobodyさん
04/08/04 20:03ID:???エラーログに
malformed header from script. Bad header=\x1f\x8b\b: /home/****/hoge.cgi
とでます。"Content-type: text/html; charset=EUC-JP\n"
を出力する前に何も出力関係の関数は使っていません。
マシン負荷などに関係なくでます。
だいたいは正常に動作していますが、時たま程度のエラーですが気になります。
原因が解る方が居たら、お力を御貸し願いたい。
apache1.3.27、 gcc 2.95.2.1です。
0215nobodyさん
04/08/05 18:01ID:???0216nobodyさん
04/08/06 00:00ID:???0219nobodyさん
04/08/11 23:44ID:???0220nobodyさん
04/08/11 23:57ID:???0221nobodyさん
04/08/12 14:52ID:PHf7JWmC0222nobodyさん
04/08/14 15:00ID:inflZLdKまじで?なんでえ?
■ このスレッドは過去ログ倉庫に格納されています