したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

1みみず★:2008/08/10(日) 23:28:15
あまりにもプログラミングの内容が増えすぎた。
よって隔離スレの中を更に隔離。

853774さん:2008/11/17(月) 22:21:30 ID:CENbthlg0
ああ、俺が親ウィンドウだと思ってたのは「フレームウィンドウ」と言うらしい。
-----
フレーム ウィンドウ スタイル (MFC)
http://msdn.microsoft.com/ja-jp/library/c0f4af2x(VS.80).aspx

854774さん:2008/11/17(月) 22:53:23 ID:CENbthlg0
CFrameWndのキャプションの形式
http://m--takahashi.com/bbs/pastlog/13000/12973.html
-----
俺の欲しい資料が発見!
MDIウィンドウの親ウィンドウ(フレームウィンドウ)のタイトルの設定方法。

855774さん:2008/11/17(月) 23:03:33 ID:CENbthlg0
いや駄目だ。
ここに載っていることを鵜呑みにすればテーマによって変わってしまうようだ。
(サブクラス化しようと思ったのに・・・)
どうしてKernel32.dllで勝手に付加しやがるんだ!

856774さん:2008/11/17(月) 23:16:37 ID:CENbthlg0
このパソコンはクラシックスタイルだったので上手く行った!
うまー。

857774さん:2008/11/17(月) 23:19:39 ID:CENbthlg0
と思ったら、違った。
クラシックスタイルだろうと、プリインストールのスタイルだろうとウィンドウのタイトルは確りと俺の計画どうりいったが、下のなんか忘れたバーが変わらない。
ネイティブAPI使っているのがばればれです。

858774さん:2008/11/17(月) 23:22:28 ID:CENbthlg0
メニューの下に影が付いていてびびったwwww
一般的なパソコンなら当たり前なんだけれども、このパソコンは違いますww

859774さん:2008/11/17(月) 23:25:44 ID:CENbthlg0
さて、まあ下のバーなんてほかって置いて、次はMDIの子ウィンドウの一番上のウィンドウのタイトルを取得すればよい。
此れは気合で調べれば何とかなってくれるはずだ。

860774さん:2008/11/17(月) 23:27:18 ID:CENbthlg0
どうして、MFCの資料ばっかなんだ・・・

861774さん:2008/11/17(月) 23:32:38 ID:CENbthlg0
えっ・・・
-----
if(HWND hWnd = FindWindow(L"SleipnirMainWindow", NULL)){
//様々な処理
}
-----
これが通るんだ・・・

862774さん:2008/11/18(火) 00:12:32 ID:CENbthlg0
なかなか上手く行ってくれたのだが、終了の時に落ちてしまうというバグに悩まされ中。
まあ、タイトルが書き換えられたから満足満足。

863774さん:2008/11/18(火) 00:15:12 ID:CENbthlg0
[STACK TRACE]
0x01533E01
<Unknown Module>
0x77CF8734 GetDC() + 0x6d
USER32.dll
0x77CF8816 GetDC() + 0x14f
USER32.dll
0x77D08EA0 DefWindowProcW() + 0x180
USER32.dll
0x77D0B16F IsWindowInDestroy() + 0x49
USER32.dll
0x7C94E453 KiUserCallbackDispatcher() + 0x13
ntdll.dll
0x004C78E5
Sleipnir.exe
0x017A3D68
<Unknown Module>
0x00A26FB0
<Unknown Module>
0x00A20178
<Unknown Module>
0x017A29C0
<Unknown Module>
0x00E43008
<Unknown Module>
0x01771C08
<Unknown Module>
0x01788C40
<Unknown Module>
0x02FACC00
<Unknown Module>
0x02F75DD0
<Unknown Module>
0x02FC2008
<Unknown Module>
0x02FE2A68
<Unknown Module>
0x016CB5C0
<Unknown Module>
0x02FC6008
<Unknown Module>
0x00EAA3F0
<Unknown Module>
0x01771748
<Unknown Module>
0x00E7A200
<Unknown Module>
0x02F3FEC0
<Unknown Module>
0x017EF000
<Unknown Module>
0x01812AB8
<Unknown Module>
0x0303CBA8
<Unknown Module>
0x00E7C0B8
<Unknown Module>
0x00EC97F0
<Unknown Module>
0x017B7008
<Unknown Module>

864774さん:2008/11/18(火) 02:35:38 ID:CENbthlg0
Winnyの通信解読に挑戦!:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060511/237617/

865774さん:2008/11/18(火) 02:36:02 ID:CENbthlg0
Tip - ネィティブAPIでプロセスを列挙する
http://www001.upp.so-net.ne.jp/yamashita/doc/nt.processlist.htm

866774さん:2008/11/18(火) 02:55:12 ID:CENbthlg0
結局、Sleipinrのタイトルを書き換えるのには、態々APIフックなど使う必要は無く、単純にサブクラス化するだけでよかったのである。
ちゃんちゃん。

867774さん:2008/11/18(火) 18:40:37 ID:CENbthlg0
Vim講座1 - think and error
http://d.hatena.ne.jp/ruicc/20081122/1226837833

868774さん:2008/11/20(木) 18:38:12 ID:CENbthlg0
std::pairにはデフォルトで比較用のoperatorがあるんだな。
前から分かっていたんだけれども。

869774さん:2008/11/20(木) 22:03:42 ID:CENbthlg0
Delphiだろうが、C#だろうが、簡単に出来るのは動作が遅い。
どんなにパソコンの計算が早くても、人間の思考能力には敵わない。
だから、最も基本的なアセンブリで書くのが最速なのである。
だが、俺もそんなにかけない。

870774さん:2008/11/20(木) 22:07:39 ID:CENbthlg0
俺的にはstd::basic_ostream<char>で、std::coutとかを扱うのは扱いにくい。
CならばFILE *で全て宣言されているので使いやすい。
まあ、C++の方が拡張性が高いので仕方ないかもしれないが、いちいちstd::basic_ostream<char>と入力するのが面倒なのだ。

871774さん:2008/11/20(木) 22:21:22 ID:CENbthlg0
まあ、ポインタでも受け取れるが、気持ち悪いので・・・

#include <iostream>
#include <iterator>
#include <algorithm>
#include <functional>
#include <fstream>
#include <string>

#include <vector>
#include <map>

#include <cstdlib>
#include <ctime>

template<typename t, typename ct>
std::basic_ostream<t, ct>&
out(std::basic_ostream<t, ct> &o){
return o << "test" << std::endl;
}

int main(int argc, char **argv){
out(std::cout);
out(std::ofstream("test.txt"));
}

872774さん:2008/11/20(木) 22:21:56 ID:CENbthlg0
要らないヘッダをインクルードしまくっているのは、色々とあるからです。

873774さん:2008/11/21(金) 18:44:34 ID:CENbthlg0
本当にメモリって定数時間でアクセスできてるの?

874774さん:2008/11/21(金) 19:07:06 ID:CENbthlg0
あれれ・・・
なんか上手くいかない・・・

875774さん:2008/11/21(金) 19:27:02 ID:CENbthlg0
十個のファイルのうち一つが通らない・・・

876774さん:2008/11/21(金) 21:14:40 ID:CENbthlg0
おかしいなあ。
俺の設計ではcheck関数に、一度も文字数ゼロの文字列は渡されないはずなのだが・・・

877774さん:2008/11/21(金) 21:16:30 ID:CENbthlg0
おかしい。
絶対におかしい。

878774さん:2008/11/21(金) 21:19:49 ID:CENbthlg0
全通り調べたことになっているにも関わらず、答えと違う。
つまり、ダブって調べてしまったところがあるということである。

879774さん:2008/11/21(金) 21:38:19 ID:CENbthlg0
std::mapとかの使い方が分からなかったので、
std::vector<std::pair<const char*, const char*> > ar;
とかやってみたが、
イテレータが
std::vector<std::pair<const char *, const char *> >::const_iterator
とか糞長いので、何とかして欲しい。
早くC++0xが実装されたコンパイラが出てきて欲しい。

880774さん:2008/11/22(土) 18:49:58 ID:CENbthlg0
情報オリンピックの本選の第二問目をやってみたのだが、バグ潰しに何時間かかったことか・・・
-----
unsigned int check(const char *x, const char *y){
unsigned int ret = 0;
while(x[ret] && y[ret] && x[ret] == y[ret]) ++ret;

return ret;
}

unsigned int mmmmax(const char * x_, const char * y_){
unsigned int x_len_ = std::strlen(x_);
unsigned int y_len_ = std::strlen(y_);

if(x_len_ > y_len_){
std::swap(x_len_, y_len_);
std::swap(x_, y_);
}

const unsigned int x_len = x_len_, y_len = y_len_;
const char * const x = x_;
const char * const y = y_;

unsigned int max = 0;

for(unsigned int i = 0; i < x_len; ++i){
const unsigned int current_max = x_len - i;
if(current_max > max){
unsigned int ret;
for(unsigned int j = 0; j < i; ++j){
ret = check(x + j, y + y_len - current_max);
if(ret == current_max){
return ret;
}
if(max < ret){
max = ret;
}
}
for(unsigned int j = 0; j < y_len - current_max + 1; ++j){
ret = check(x + i, y + j);
if(ret == current_max){
return ret;
}
if(max < ret){
max = ret;
}
}
}else{
break;
}
}

return max;
}

881774さん:2008/11/22(土) 19:06:56 ID:CENbthlg0
態々constに代入しなおしているのは、最適化されないかなあ?という甘い期待。

882774さん:2008/11/22(土) 19:43:32 ID:CENbthlg0
気分でJavaScriptに移植してみた。

function check(x, y){
var ret = 0;
var len = Math.min(x.length, y.length);
for(var i = 0; i < len; ++i){
if(x.charAt(i) == y.charAt(i)){
++ret;
}else{
break;
}
}
return ret;
}

function mmmmax(x_, y_){
var x, y, x_len, y_len;
if(x_.length > y_.length){
x = y_; y = x_;
}else{
x = x_; y = y_;
}
x_len = x.length; y_len = y.length;

var max = 0;

for(var i = 0; i < x_len; ++i){
var current_max = x_len - i;
var func = function(a, b){
var ret = check(x.substring(a), y.substring(b));
if(ret == current_max){
return ret;
}
if(max < ret){
max = ret;
}
};
if(current_max > max){
var ret;
for(var j = 0; j < i; ++j){
ret = func(j, y_len - current_max);
if(ret) return ret;
}
for(var j = 0; j < y_len - current_max + 1; ++j){
ret = func(i, j);
if(ret) return ret;
}
}else{
break;
}
}

return max;
}

883774さん:2008/11/22(土) 20:07:52 ID:CENbthlg0
>>564
が滅茶苦茶早くて吹いた。
すげえええええええええええ

884774さん:2008/11/22(土) 20:41:35 ID:CENbthlg0
Programming Contests, Software Development, and Employment Services at TopCoder
http://www.topcoder.com/

885774さん:2008/11/23(日) 14:08:42 ID:CENbthlg0
パイプ自体は面白いが、待ち受けとかの処理は確かに大変そうである。

886774さん:2008/11/23(日) 14:09:14 ID:CENbthlg0
#include <iostream>
#include <functional>
#include <algorithm>
#include <iterator>

#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <tchar.h>

#include <windows.h>

#include <boost/scoped_array.hpp>

int main(int argc, char **argv){
{

int len = lstrlenA(argv[0]);

boost::scoped_array<char> exename(new char[len + 1]);
lstrcpyA(exename.get(), argv[0]);

int i;
for(i = len - 1; i >= 0; --i){
if(exename[i] == '\\'){
exename[i + 1] = '\0';
break;
}
}
if(i == 0) return -1;
SetCurrentDirectoryA(exename.get());
}

HANDLE hRead, hWrite;
SECURITY_ATTRIBUTES sap = {sizeof(sap)};
sap.bInheritHandle = TRUE;
CreatePipe(&hRead, &hWrite, &sap, 0);

STARTUPINFO si = {sizeof(si)};
si.dwFlags = STARTF_USESTDHANDLES;
si.hStdOutput = hWrite;
si.hStdError = GetStdHandle(STD_ERROR_HANDLE);
si.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
PROCESS_INFORMATION pi;

if(CreateProcess(_T("test_test2.exe"), NULL, NULL, NULL, TRUE, NORMAL_PRIORITY_CLASS | CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi)){
WaitForSingleObject(pi.hProcess, INFINITE);
char buff[1024];
DWORD dummy;
ReadFile(hRead, buff, sizeof(buff), &dummy, NULL);
std::cout.write(buff, dummy);

CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
CloseHandle(hRead);
CloseHandle(hWrite);
}

887774さん:2008/11/23(日) 16:04:05 ID:CENbthlg0
おい。
valarrayなんて初めて聞いたぞ。
-----
boost::serializationの使い方
http://hw001.gate01.com/eggplant/tcf/cpp/boost_serialization.html
---
>それぞれ必要なヘッダー名は、boost/serialization/<クラス名>.hppです。 私としてはC++標準にもかかわらず無視されているvalarrayとbitsetが可哀想で可哀想で……。
-----
これは酷いww

888774さん:2008/11/23(日) 16:36:30 ID:CENbthlg0
STLは便利♪
http://blogs.wankuma.com/episteme/archive/2008/11/13/161237.aspx
-----
何!
C++には標準で、順列を発生させるSTLが入っているだと・・・

std::next_permutation

889774さん:2008/11/23(日) 17:12:17 ID:CENbthlg0
本の虫: C++0x N2601 60進数リテラル
http://cpplover.blogspot.com/2008/05/n2601-60.html
---
>もし君の環境に、楔形文字フォントがインストールしてあるならば、これは読めるはずだ。Unicodeで表現できるすべての文字のフォントをインストールしておくことは、とても重要だ。マイクロソフトは、その重要さがわかっているからこそ、Windows Vistaに、300メガバイト以上ものフォントを標準で入れておくことを決断したのだ。
-----
wwwwwwwww

890774さん:2008/11/24(月) 10:47:51 ID:CENbthlg0
Minefieldを入れたんだけれども、全てのタブを閉じると終了するのはどうにかして欲しい。

891774さん:2008/11/24(月) 11:11:52 ID:CENbthlg0
C++0xを皆使うようになーあれ!

892774さん:2008/11/24(月) 11:49:02 ID:CENbthlg0
此れからはMinefieldとSleipnir3を使っていくことにしよう。
取り敢えず、Sleipnir3が、あまりにも頻繁に落ちすぎるので、ちゃっちゃと改造してしまおう。

893774さん:2008/11/24(月) 11:51:01 ID:CENbthlg0
dword ptr[ecx]とか言う感じの命令で落ちてしまっているので、ecxが0だったら参照しないようにしようかな。
いや、やっぱりここは念のためにecxが64k以下だったら参照しないようにしよう。
Windowsが64kまではリザーブしているからである。

894774さん:2008/11/24(月) 11:58:04 ID:CENbthlg0
必要じゃないときに落ちて、必要なときに落ちない。
ばかやろう。

895774さん:2008/11/24(月) 12:12:04 ID:CENbthlg0
Minefieldいいんだけれども、タグを選択する際にちょっとでもドラッグしたようになっちゃうと、他のウィンドウで開くようになっちゃうのはどうにかして欲しい。
というか、他のウィンドウで開くようなことをする機会なんてあるのか?
正直要らない機能。
全てのタブを閉じるとウィンドウも閉じるのも何とかして欲しい。

896774さん:2008/11/24(月) 12:13:45 ID:CENbthlg0
勿論良い部分もあって、アドレスバーにnicoとか入力するだけでサジェストしてくれるのは非常に使いこなせれば重宝しそうな機能である。
だけれども、検索したときに新しいウィンドウに出てきて欲しいというのは俺の正直なところである。
アドレスバーでエンターしたときに新しいウィンドウで開けるようになるとさらに良いかもしれないが、基本機能は此れだけなのか?Firefoxさん。
しょぼすぎだろJK

897774さん:2008/11/24(月) 20:29:36 ID:CENbthlg0
滅茶時間かかった。
一時間ぐらいかかったんじゃね?
ecxが0x10000より小さいときは関数を呼び出さないようにしてみた。
此れで落ちないはず。

898774さん:2008/11/24(月) 20:38:48 ID:CENbthlg0
winips用のパッチを作ってみた。
Sleipnir3のunicode版だけなのです。

50 41 54 43 48 02 9B A2 00 04 E9 28 A0 03 02 9B A7 00 00 00 0B CC 06 3B CF 00 04 C7 01 C8 7E 06 3B D4 00 06 41 8B 49 04 81 F9 06 3B DC 00 01 10 06 3B DE 00 09 72 06 8B 01 51 FF 50 08 C3 45 4F 46

899774さん:2008/11/24(月) 20:49:10 ID:CENbthlg0
ActivePerl入れた。
此れでスクリプトを書ける。

900774さん:2008/11/24(月) 20:53:28 ID:CENbthlg0
まあ、バッチファイルという手もあるんだけどね!

901774さん:2008/11/24(月) 21:00:50 ID:CENbthlg0
PerlからJavaScriptは構文を取り入れたのか?

902774さん:2008/11/25(火) 14:52:33 ID:CENbthlg0
確かに
~=と=~は間違えるわwwwwwwwww

903774さん:2008/11/25(火) 14:55:51 ID:CENbthlg0
Perlきもいきもいきもい。

904774さん:2008/11/25(火) 15:14:04 ID:CENbthlg0
ふと思ったんだけれども、SnapCrabで、画像を取得する範囲を引数で渡せればいいな。

905774さん:2008/11/25(火) 16:12:29 ID:CENbthlg0
Perlはちゃんとeqとか==とか使い分けないといけないなあ。まんどくせ。

906774さん:2008/11/25(火) 16:16:50 ID:CENbthlg0
パールは神か?
いやどっちでもない。

907774さん:2008/11/25(火) 18:34:40 ID:CENbthlg0
とりあえず、SleipnirもVC++見たいに、色々な所にサイドバーというか、まあ色々と置けるべきだと思う。

908774さん:2008/11/25(火) 18:34:57 ID:CENbthlg0
そう。Sleipinrはパクリまくればいいのだ!

909774さん:2008/11/25(火) 18:37:50 ID:CENbthlg0
色々とあって、結局Minefieldがメインブラウザになってねーよwww
お気に入りとか使いにくい。
Lunascapeのフローティングもいいが、左右の場所を結構取るのが駄目。
Sleipnirは全くとらないように出来るのがいい!

910774さん:2008/11/25(火) 18:39:42 ID:CENbthlg0
Firefoxのブックマークって、一箇所に入れることしか考えてないよね。
まあタグが使えるから当然か。

911774さん:2008/11/25(火) 20:11:58 ID:CENbthlg0
適当な機会があったら、Sleipnirに欲しい機能を全て纏めたい。

912774さん:2008/11/25(火) 20:59:40 ID:CENbthlg0
俺的Sleipnir要望
http://www.google.com/notebook/public/16824235701148830092/BDRfMDAoQkO_zm90j

Publishした。

913774さん:2008/11/25(火) 21:00:21 ID:CENbthlg0
俺はもうMinefield使いなのですwwww
Googleツールバーも入れて、ブックマークもそこに登録するようにする。
気になったら直ぐ登録を心がける。

914774さん:2008/11/26(水) 18:49:53 ID:CENbthlg0
文字列クラスへのキャストの必要性 - Lispのひび
http://d.hatena.ne.jp/tazant/20081126/1227687807
-----
あれ・・・・
-----
t216::string s;
double i = 8.5;

s = d;
std::cout << "s = " << s << std::endl;
-----
見たいなことって出来たっけなあ・・・・?

915774さん:2008/11/26(水) 18:50:47 ID:CENbthlg0
あ。
別に普通にoperator =(int)とかを用意すればいいか。アホス。

916774さん:2008/11/26(水) 18:56:36 ID:CENbthlg0
class Test{
private:
int i;

public:
Test(int _i)
: i(_i)
{}

int operator=(int _i){
return i = _i;
}

void Show(){
std::cout << i << std::endl;
}
};

int main(int argc, char **argv){
Test o = 12;
o = 30;
o.Show();
}

917774さん:2008/11/26(水) 19:16:23 ID:CENbthlg0
Perlキモイな本当に。
なんか$/if書けるみたい。
ちゃんと勉強しようっと。

918774さん:2008/11/26(水) 20:39:38 ID:CENbthlg0
やっぱり、ブラッディ・マンデイか忘れたけれども、あれ都合よすぎだよな。
というか、まず、シリアルナンバーと顧客情報が対応しているはずがねーんだよ。
もうその時点でSQLインジェクションなんて(ry
-----
SQLインジェクションが出来るシステムなんて脆弱すぎだろJK

919774さん:2008/11/27(木) 13:45:57 ID:CENbthlg0
俺のSleipnirでGoogle Maps言って、そのウィンドウを閉じようとするととてつもなく重くなる。
どうさ中は軽いのにな・・・

920774さん:2008/11/27(木) 19:29:05 ID:CENbthlg0
動画の再生はエコノミーモードでいい。
だけれどもダウンロードは通常画質がいい。

921774さん:2008/11/27(木) 19:42:48 ID:CENbthlg0
Minefield流石!
alpha以前だけあって、常用には耐えかねるよね!
という事で、タブの移動が出来なくなった・・・

922774さん:2008/11/28(金) 13:48:07 ID:CENbthlg0
なぜ外部からWindowsマシンに侵入できるのか?:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20081022/317467/
画面で見るLinux「Ubuntu 8.10 Desktop 日本語 Remix CD」:ITpro
http://itpro.nikkeibp.co.jp/article/NEWS/20081104/318475/
Linuxコマンド集 INDEX:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060224/230573/
なぜネットワーク通信を盗聴できるのか?:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20081022/317465/

923774さん:2008/11/28(金) 15:23:25 ID:CENbthlg0
Amazon.co.jp: Short Coding ~職人達の技法~: Ozy, やねうらお: 本
http://www.amazon.co.jp/exec/obidos/ASIN/4839925232/
-----
驚愕のソースらしい。

924774さん:2008/11/28(金) 16:42:37 ID:CENbthlg0
連載:C# 3.0入門 − @IT
http://www.atmarkit.co.jp/fdotnet/csharp30/index/index.html

925774さん:2008/11/28(金) 17:10:25 ID:CENbthlg0
ActionScript3 最適化・高速化Tips 簡易まとめ - ConquestArrow.addEventListener(); - actionscriptグループ
http://actionscript.g.hatena.ne.jp/ConquestArrow/20070621/1182359767

926774さん:2008/11/28(金) 18:27:21 ID:CENbthlg0
@IT:連載 改訂版 C#入門
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/

927774さん:2008/11/28(金) 18:29:47 ID:CENbthlg0
統計科学のための電子図書システムのWebページ
http://www.sci.kagoshima-u.ac.jp/~ebsa/index.html

928774さん:2008/11/28(金) 18:31:59 ID:CENbthlg0
web book
http://www.sun-inet.or.jp/~yaneurao/webbook/
-----
本がただでよめるよー。
プログラミング関連の本一杯。

929774さん:2008/11/28(金) 19:50:34 ID:CENbthlg0

http://www.amazon.co.jp/exec/obidos/ASIN/4320017382/

930774さん:2008/11/28(金) 19:50:52 ID:CENbthlg0
Amazon.co.jp: これなら分かる応用数学教室―最小二乗法からウェーブレットまで: 金谷 健一: 本
http://www.amazon.co.jp/exec/obidos/ASIN/4320017382/
-----
タイトルがなくなってしまった・・・
もう一度。

931774さん:2008/11/29(土) 11:13:00 ID:CENbthlg0
Wataru's memo(2003-10-01)
http://memo.wnishida.com/?date=20031001
-----
ぬ!
RDTSC 命令だと・・・
64bitで1Hz毎にインクリメントとか・・・・
どんだけええええええええええええええええ

932774さん:2008/11/29(土) 11:19:10 ID:CENbthlg0
どんだけ高性能だよwwwwwwwwwwwwwwwwwwwwwwwww
-----
#include <iostream>

unsigned long long int _clock(){
__asm{
rdtsc
}
}

int main(int argc, char **argv){
unsigned long long int t = _clock();
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
}

933774さん:2008/11/29(土) 11:25:59 ID:CENbthlg0
出来るだけ、呼び出す間隔を小さくしてみた。
-----
#include <iostream>

unsigned long long int _clock(){
__asm{
rdtsc
}
}

int main(int argc, char **argv){
#define baka(x) unsigned long long int x = _clock()
#define aho(x) std::cout << (x) << std::endl
baka(i);
baka(j);
baka(k);
baka(l);
baka(m);
baka(n);
baka(o);
baka(p);
baka(q);
baka(r);
baka(s);
baka(t);
baka(u);
baka(v);
baka(w);
baka(x);
baka(y);
baka(z);

aho(i);
aho(j);
aho(k);
aho(l);
aho(m);
aho(n);
aho(o);
aho(p);
aho(q);
aho(r);
aho(s);
aho(t);
aho(u);
aho(v);
aho(w);
aho(x);
aho(y);
aho(z);

#undef aho
#undef baka
}

934774さん:2008/11/29(土) 11:33:18 ID:CENbthlg0
C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\test_te
st\Release>test_test & test_test & test_test
4659306301320
4659306301364
4659306301408
4659306301452
4659306301496
4659306301540
4659306301584
4659306301628
4659306301672
4659306301716
4659306301760
4659306301804
4659306301848
4659306301892
4659306301936
4659306301980
4659306302024
4659306302068
4659343833528
4659343833572
4659343833616
4659343833660
4659343833704
4659343833748
4659343833792
4659343833836
4659343833880
4659343833924
4659343833968
4659343834012
4659343834056
4659343834100
4659343834144
4659343834188
4659343834232
4659343834276
4659372103020
4659372103064
4659372103108
4659372103152
4659372103196
4659372103240
4659372103284
4659372103328
4659372103372
4659372103416
4659372103460
4659372103504
4659372103548
4659372103592
4659372103636
4659372103680
4659372103724
4659372103768

935774さん:2008/11/29(土) 11:49:56 ID:CENbthlg0
おおこれいいね!
-----
>その場合、問題になるのが静的変数の実体を記述する場所です。
>C++では、実体はヘッダファイル(.h)ではなくソースファイル(.cpp)に記述する必要があります。
>ヘッダファイルに実装を全て記述しているのに、静的変数のためにソースファイルを作るのも
>バカバカしいですよね。
>
>そういう場合、__declspec(selectany)を使うと、ヘッダファイル内に実体を記述することができます。
>うーーーん、便利。なお、当然ですが、VC++の独自拡張です。
---
__declspec(selectany) declarator - VC++
http://www.ailight.jp/blog/sha256/archive/2005/03/22/5258.aspx

936774さん:2008/11/29(土) 11:56:21 ID:CENbthlg0
京都観光を終えて - mala‐ニコニコ動画(秋)
http://www.nicovideo.jp/watch/sm5377545
-----
ほうほう、LivedoorReaderは人気ブログは一時間程度、そうじゃないブログは三時間程度でクロールしているらしい。
直ぐ更新というのは不可能ということは分かっているんだけれども(ry

937774さん:2008/11/29(土) 12:19:20 ID:CENbthlg0
mixiがこの時期に年齢制限を緩和した本当の理由
http://anond.hatelabo.jp/20081129010631
-----
ほうほう。こういう解釈の方法もありか。

938774さん:2008/11/29(土) 12:53:25 ID:CENbthlg0
基礎からC++
http://mukun_mmg.at.infoseek.co.jp/mmg/cpp.html
----
番外編のアルゴリズムでも。

939774さん:2008/11/29(土) 14:14:30 ID:CENbthlg0
INVALID_ATOM
っていう定数があるじゃん。まあ0なんだけど。

940774さん:2008/11/29(土) 14:30:09 ID:CENbthlg0
VC++でデバッグしたときに
0xFFFFFFFFが0FFFFFFFFと出てびびった。
0がついてるから、0x0FFFFFFF(Fが七個)だと思っただけなのだが。

941774さん:2008/11/29(土) 14:39:43 ID:CENbthlg0
があああああああああああああ
sizeof(Data::mutexName)
とか出来ないのがもどかしいいいいいいいいいいい

942774さん:2008/11/29(土) 14:41:51 ID:CENbthlg0
lstrlenAとlstrlenWとlstrlenは使い分けましょうね!

943774さん:2008/11/29(土) 14:46:59 ID:CENbthlg0
そういえば、
sizeof(STRUCTURE::ARRAY[0])
とか言う書き方は出来るのか?出来ぬのか?

944774さん:2008/11/29(土) 15:47:34 ID:CENbthlg0
おお。
色々とちょっと上のほうの_clock関数を利用して遊んでいるのだが、本当にプロセスのプライオリティを変更すると出る値が大きくなる(差を表示している。)

945774さん:2008/11/29(土) 15:49:12 ID:CENbthlg0
こんな感じ。

#define STRICT 1

#include <iostream>
#include <functional>
#include <algorithm>
#include <iterator>
#include <string>

#include <valarray>

#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <tchar.h>

#include <windows.h>

unsigned long long int _clock(){
__asm{
rdtsc
}
}

int main(int argc, char **argv){
for(;;){
long long int a = _clock();
Sleep(0);
long long int b = _clock();

if(b - a >= 1000000){
std::cout << b - a << std::endl;
}
}

return 0;
}

946774さん:2008/11/29(土) 15:49:58 ID:CENbthlg0
なんかこう表示してみると、CPUって結構暇なんだね。

947774さん:2008/11/29(土) 15:53:07 ID:CENbthlg0
タスクマネージャでプライオリティを高にしてみたら、音楽の再生が止まりそうになった。
というか、レコード見たいに同じところを再生するって言う。
これはハードウェアのキャッシュの関係って言うことでいいのかな?

948774さん:2008/11/29(土) 16:41:26 ID:CENbthlg0
せっかく小学四年のころからパソコンに触ってワードとか弄くっているぐらいだったら、プログラミングに興味を持ってそのころからパソコンを色々と弄くって遊んでいたほうが面白かったかもしれないなあと、過去の自分を否定してみる。
いや、それより前に中学の時からでもCとかC++に触れておくべきだったと思う。もうねVBなんて駄目なんですよ。

949774さん:2008/11/29(土) 16:58:14 ID:CENbthlg0
0b
ってC++0xで却下されたんですか。そうですか。

950774さん:2008/11/29(土) 17:43:40 ID:CENbthlg0
コンピュータアーキテクチャの話 | コラム | エンタープライズ | マイコミジャーナル
http://journal.mycom.co.jp/column/architecture/index.html

951774さん:2008/11/29(土) 18:41:07 ID:CENbthlg0
正規表現エンジンを作ろう:CodeZine(コードジン)
http://codezine.jp/article/corner/237
-----
本当にインターネットというものは面白いものが一杯転がっている。

952774さん:2008/11/29(土) 20:26:24 ID:CENbthlg0
法的に危ないファイルを配布するときはさ、zipで圧縮した上でさ、なんか適当なファイルの差分を掲載すればいいと思う。
確か、Windows XPには全て0x00な大きなファイルを作るコマンドがあるから(※)これとの差分をとればいいと思う。
でパッチを作ってファイル名を“パッチを作ったときに使ったファイル名.圧縮形式の拡張子”にすれば良いと思う。
まあ、これをここで書く時点でだめなんだけれどもね。
256通りあるしいろいろと試すといいかもしれないね!

-----

@IT:Windows TIPS -- Tips:巨大なサイズのファイルを簡単に作る方法
http://www.atmarkit.co.jp/fwin2k/win2ktips/243largefile/largefile.html


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板