OpenWatcom C++at TECH
OpenWatcom C++ - 暇つぶし2ch713:デフォルトの名無しさん
12/05/07 22:13:12.72 .net
15年ぶりくらいにwatcomC++使ってみたけど。
相変らず日本語リソースの文字化け問題なおってないのねえ(ノ∀`)

714:デフォルトの名無しさん
12/05/19 11:11:01.86 .net
>>713
んじゃ、開発元に報告よろ。

715:デフォルトの名無しさん
12/05/26 22:28:09.90 .net
-zk付けてないオチじゃ無いよな

716:デフォルトの名無しさん
12/07/14 23:30:41.78 .net
OpenWatcom 2.0

 ☆ チン マチクタビレタ~
     マチクタビレタ~
☆ チン  〃 ∧_∧
 ヽ___\(\・∀・)
  \_/ ⊂ ⊂_)
  / ̄ ̄ ̄ ̄ ̄ /|
 | ̄ ̄ ̄ ̄ ̄ ̄| |
 | 愛媛みかん |/

717:デフォルトの名無しさん
12/08/08 16:24:13.24 .net
freedos1.1拾ってきたからついでにopenwatcom入れてみた
どう遊ぼうか

718:デフォルトの名無しさん
12/08/08 16:30:01.96 .net
それ俺もやってみたかったのよね
何か面白いことあったら後でおせーて

719:デフォルトの名無しさん
12/08/08 18:25:06.05 .net
とりあえずreadme.txtにあるDOSの設定でopenwatcomは普通に動く
スレチだけどvmwareとfreedos1.1の相性が悪いっぽくて、日本語化するとfreedosが固まるw

720:デフォルトの名無しさん
12/08/08 18:47:55.07 .net
そうするとVitual Boxか…はたまたQEMUか…仮想化ソフトってあと何があったけ?
というかDOSの時代を知らないからどうやってビルドするのか見当つかねw

721:デフォルトの名無しさん
12/08/09 11:25:51.63 .net
jdisp.sys /HS=LCとかそういう話?

722:デフォルトの名無しさん
12/08/09 12:50:43.13 .net
そういう話だった
config.sysの設定だいぶ忘れてるなぁ

723:デフォルトの名無しさん
12/08/09 13:14:42.66 .net
日本語化したままコンパイラ動かしたら死亡したw

724:デフォルトの名無しさん
12/08/10 17:36:22.61 .net
stlportのポーティングあるのな
1.8用だけど、openwatcomのランタイム呼び出す部分ごにょごにょすれば十分戦える
URLリンク(www.openwatcom.org)

725:デフォルトの名無しさん
12/08/15 15:08:47.48 .net
stlportのデバッグモードのdllリンクするとランタイムエラー出るな
調査は誰かに任せた
以下メッセージ

undefined constructor or destructor called!

726:725
12/08/15 15:37:57.32 .net
ソース貼ってなかった

#include <iostream>
#include <string>
int main()
{
std::cout << "hello, world!" << std::endl;
return 0;
}

727:デフォルトの名無しさん
12/08/23 16:53:36.29 .net
それっぽいヘッダ見つからないけど、
SSE使おうと思ったらアセンブラで直打ち?

728:デフォルトの名無しさん
12/08/23 19:09:11.79 .net
下手すればアセンブラすら対応してないないかもと思ったら
かろうじてSSE3までは対応していた

729:デフォルトの名無しさん
12/08/25 17:37:17.84 .net
Watcomerなら #pragma で埋め込んでください。

730:デフォルトの名無しさん
12/09/03 16:59:04.15 .net
こうして
#pragma pack(4)
struct __m128 {
float m128_f32[4];
};

こうやって
extern "C" __m128 _mm_add_ps(__m128 &a, __m128 &b);

こうやると
#pragma aux _mm_add_ps = \
".686 " \
".XMM " \
"movaps xmm0,[eax] " \
"movaps xmm1,[edx]" \
"addps xmm0,xmm1" \
"movaps [esi],xmm0" \
parm [eax] [edx]


…movapsでこけるな
とりあえずmovups使うとして、アライメントの調整どうするんだ?

731:730
12/09/03 19:51:42.43 .net
コンパイラに用意されてないっぽいから適当にやるか

732:730
12/09/04 16:39:10.83 .net
#pragma pack(16)
ってやったら通った
けど微妙に気持ち悪いな


733:デフォルトの名無しさん
12/09/04 22:22:55.40 .net
unsigned char *p1 = malloc( sizeof(struct __m128) + 15);
unsigned char *p2 = malloc( sizeof(struct __m128) + 15);
struct __m128 *x1 = p1 & 0xfffffff0;
struct __m128 *x2 = p2 & 0xfffffff0;
_mm_add_ps( &x1,&x2 );

free( p1 );
free( p2 );

734:733
12/09/04 22:26:06.39 .net
引数に渡すとこ間違えた。&いらんか。

735:デフォルトの名無しさん
12/10/08 16:55:46.38 .net
インスコミスったくさい

736:デフォルトの名無しさん
12/10/08 23:51:19.90 .net
がんばってくさい

737:デフォルトの名無しさん
12/10/17 00:47:21.13 .net
ばあさんや、2.0はまだかのう?

738:デフォルトの名無しさん
12/10/19 00:48:04.10 .net
じいさん、さっき1.9がでたばっかりじゃろ

739:デフォルトの名無しさん
12/12/06 12:41:58.34 .net
bad_allocクラスがあるんだから投げてくれてもいいのになあ

740:デフォルトの名無しさん
12/12/20 16:28:37.35 .net
C99にあるけど未実装の数学関数をfortranのライブラリから適当に持ってくる場当たりハック

741:デフォルトの名無しさん
13/01/16 19:16:26.12 .net
stringのoperator<<とoperator>>まだー?

742:デフォルトの名無しさん
13/01/17 06:47:05.24 .net
// wcl386 whattime.cpp
#define FILE_NAME "whattime.txt"
#include <fstream.h>
#include <iomanip.h>
#include <strstrea.h>
#include <string.hpp>
#include <time.h>

int main()
{
  ostrstream os;
  strstreambuf *b = os.rdbuf();
  time_t timer = time(NULL);
  struct tm *p = localtime(&timer);
  os << " " << setfill('0') << setw(2) << p->tm_hour;
  os << ":" << setfill('0') << setw(2) << p->tm_min;
  os << ":" << setfill('0') << setw(2) << p->tm_sec << ends;
  String hours_minutes_seconds( os.str() );
  b->freeze(0);

  ofstream file;
  file.open(FILE_NAME, ios::app);
  file << hours_minutes_seconds;
  file.close();
  return 0;
}
/*
whattime
type whattime.txt
*/

743:デフォルトの名無しさん
13/01/17 06:49:45.39 .net
C:\work>whattime

C:\work>type whattime.txt
06:48:35
C:\work>whattime

C:\work>type whattime.txt
06:48:35 06:48:56
C:\work>whattime

C:\work>whattime

C:\work>whattime

C:\work>type whattime.txt
06:48:35 06:48:56 06:49:04 06:49:06 06:49:11
C:\work>

744:デフォルトの名無しさん
13/01/24 13:56:44.17 .net
みんな喜べ
色々用意ができれば今年の終わりに2.0出せるかもってよ
ソースはニュースグループ

745:デフォルトの名無しさん
13/01/24 21:28:38.05 .net
2.0で何か変わるの?

746:デフォルトの名無しさん
13/01/24 22:52:43.36 .net
Windows8対応

747:デフォルトの名無しさん
13/02/10 17:44:30.57 .net
Digital Mars C/C++ Compiler Version 8.56 がひっそりと出てる
URLリンク(www.digitalmars.com)

748:デフォルトの名無しさん
13/02/10 18:42:19.32 .net
いつの間にかDigital MarsのスレがDAT落ちしてる…

749:デフォルトの名無しさん
13/02/11 12:36:53.03 .net
去年大量糞スレ立て荒らしがあった
例の件の証拠隠滅と思われ

750:デフォルトの名無しさん
13/02/26 12:40:21.12 .net
nanを比較してtrueが帰ってきてちょっとあせったけど
そもそもC++98だとnanの比較が未定義だったぜ

751:デフォルトの名無しさん
13/03/12 18:31:42.20 .net
sgiのSTLの最新版がrope以外殆んどそのまま使えそうな予感
エラーでたところのtypename消してコンフィグいじったらコンパイル通った

752:デフォルトの名無しさん
13/05/24 23:50:53.13 .net
stlport 5.2.1 for dmc,Open Watcom
URLリンク(www.6809.net)

753:デフォルトの名無しさん
13/07/26 NY:AN:NY.AN .net
/*
wcl386 nonnum.cpp
nonnum 5
nonnum -
nonnum ^
*/
#include <iostream.h>
#include <string.hpp>
int main(int argc, char *argv[])
{
  String line("0123456789");
  const int line_length = line.length();
  if(argc != 2) return 1;

  int b = line.index(argv[1]); // nonnum 5
  if(b != NPOS) {
    cout << argv[1] << " can be found." << endl;
  } else {
    String non_number(argv[1]);
    if(non_number == "-") {
      b = line_length;
    } else {
      b = 0;
    }
  }
  String lead = line(0, b);
  String trail = line(b, line_length);
  cout << trail << endl; // "56789"
  return 0;
}

754:デフォルトの名無しさん
13/07/26 NY:AN:NY.AN .net
nonnum "^"

755:デフォルトの名無しさん
13/10/05 18:40:23.90 .net
確信

756:デフォルトの名無しさん
13/10/17 18:22:02.26 .net
エディタでソースの日本語表示ってフォントを変えれば出来るんだな、つかフォントの変え方が独特すぎる

757:デフォルトの名無しさん
13/10/21 23:27:02.65 .net
#include <iostream>
class StaticInteger {
    int data;
    int *pointer;
public:
    StaticInteger(int *p, int d) {
        pointer = p;
        data = d;
    }

    int acquire() const { return data; }
    void revise(int *p, int d) {
        if(p == pointer) data = d;
    }
} *static_integer;

void function() {
    using namespace std;
    cout << static_integer->acquire() << endl;
}

static int static_int;
int main(void) {
    StaticInteger si(&static_int, 2345);
    static_integer = &si;
    function();
    static_integer->revise(&static_int, 8765);
    function();
    return 0;
}

758:デフォルトの名無しさん
13/11/29 10:53:13.80 .net
2.0まだ~?

759:デフォルトの名無しさん
13/12/16 11:34:12.96 .net
URLリンク(sourceforge.net)

760:デフォルトの名無しさん
13/12/17 23:31:20.81 .net
ファイル名 2.0 だけど正式releaseじゃなくてデイリービルドなのか?
少し試してみたけど1.9 とほとんど変わってなさそうだった。
ヘッダみるとインデントや名前の付け替えは多いけど肝心の修正は少なそうだし

761:デフォルトの名無しさん
14/01/25 12:55:02.01 .net
stubがへんな日本語になのだが、英語にする方法教えて
環境は Windows XPで、wcl Version 1.8

>これは an OS/2 16-bit 実行可能 です

762:デフォルトの名無しさん
14/01/28 21:09:37.48 .net
SET WLANG=english

763:デフォルトの名無しさん
14/01/29 13:52:17.88 .net
見栄えがよくなったよ
ありがとん

>This is an OS/2 16-bit executable

764:デフォルトの名無しさん
14/02/12 23:45:17.25 .net
誰か新ネタくれよ

765: 【だん吉】
14/03/01 00:41:09.57 .net
これとVS2010のC++とどっちがいいかな

766:デフォルトの名無しさん
14/03/09 09:54:14.45 .net
std::forward_listきたか

767:デフォルトの名無しさん
14/03/21 15:40:46.17 HlK5TI/j.net
プロファイラのつかいかた
例でおしえてください
おねがいします
コマンドツールでもプロファイラつかえますか?
わからんわからん

768:デフォルトの名無しさん
14/03/22 17:19:23.68 4HmosEXO.net
>>767
ヘルプ見て分からないか?
デバッグ情報付きでビルドして、サンプラにかけて出たファイルをプロファイラに渡すだけだろ
最適化はかけとけよ

769:デフォルトの名無しさん
14/04/03 04:15:15.90 DqBt0M+X.net
#include <iostream.h>
#include <string.h>
#include <string.hpp>

void display(String & s)
{
    cout << "length = " << s.length() << endl;
    int u = strcspn( s.c_str(), "0123456789"); // Error!
    cout << "u = " << u << endl;
}
// つづく

770:デフォルトの名無しさん
14/04/03 04:16:13.95 DqBt0M+X.net
int main(int argc, char *argv[])
{
    const int COUNT = 4096;
    String id("bcd10023");
    int id_length = id.length();

    switch(argc) {
    case 2:
        if(! strcmp(argv[1], "-e") ) { // Errorになるオプション
            String s = id(id_length, COUNT);
            display(s);
        } else {
            display(id);
        }

        break;
    default:
        display(id);
        break;
    }

    return 0;
}

771:デフォルトの名無しさん
14/04/03 04:18:00.77 DqBt0M+X.net
C:\work>cspan
length = 8
u = 3

C:\work>cspan -e
length = 0
The instruction at 0x00401412 referenced memory at 0x00000000.
The memory could not be read.

C:\work>cspan -s
length = 8
u = 3

772:デフォルトの名無しさん
14/04/03 05:02:24.33 8q69jo+f.net
> String s = id(id_length, COUNT);
なにこれ

C:\WATCOM\docs\cpplib.pdf

にも書いてないけど

773:デフォルトの名無しさん
14/04/03 05:27:06.37 DqBt0M+X.net
部分文字列です
sub-sequenceは、posからはじまって、len個つづきます
The sub-sequence begins at offset pos within the String object and continues for len characters.


String::operator ()()

Synopsis: #include <string.hpp>
public:
String String::operator ()( size_t pos, size_t len ) const;
Semantics: This form of the operator () public member function extracts a sub-sequence of characters from
the String object. A new String object is created that contains the sub-sequence of characters.
The sub-sequence begins at offset pos within the String object and continues for len characters. The
first character of a String object is at position zero.
If pos is greater than or equal to the length of the String object, the result is empty.
If len is such that pos + len exceeds the length of the object, the result is the sub-sequence of characters
from the String object starting at offset pos and running to the end of the String object.
Results: The operator () public member function returns a String object.
See Also: String::operator [], operator char, operator char const *

String Class 873
cpplib.pdf

774:デフォルトの名無しさん
14/04/03 05:31:01.56 DqBt0M+X.net
// substri.cpp
#include <iostream.h>
#include <string.hpp>

int main(int argc, char *argv[])
{
    const int COUNT = 4096;
    String id("bcd10023");
    int id_length = id.length();

    String s = id(id_length, COUNT);
    cout << "s: length = " << s.length() << endl;
    cout << s << endl;

    int count = 3;
    int begin = 3;
    String g = id(begin, count);
    cout << "g: length = " << g.length() << endl;
    cout << g << endl;
    return 0;
}
/*

C:\work>substri
s: length = 0

g: length = 3
100

*/

775:デフォルトの名無しさん
14/06/09 23:57:18.89 dAVEHAsk.net
windows 7,64bitを使っているのですが,
wclでコンパイルした実行ファイルは,64bitでは使えない
というメッセージがでるのですが,wcl386でコンパイルする
と実行できるのです。
wclとwcl386とではどう違うのでしょうか。

776:デフォルトの名無しさん
14/06/10 01:06:02.23 kNmgHm7N.net
wcl は 16bit CPU 環境用の exe を生成。
wcl386 は 32bit CPU 環境用の exe 生成。

32bit windows は 16/32 bit(cpu) exe を実行できるけど、
64bit windows は 32/64bit exe のみで 16bit exeを実行できない。

777:デフォルトの名無しさん
14/06/10 05:40:57.55 ZIPkO3Cr.net
>777
了解しました。
ありがとうございます。

778:デフォルトの名無しさん
14/08/03 12:09:22.65 91Gs3y/1.net
★2ch勢いランキングサイトリスト★

◎ +ニュース
・ 2NN
・ 2chTimes
◎ +ニュース新着
・ 2NN新着
・ Headline BBY
◎ +ニュース他
・ Desktop2ch
・ 記者別一覧
◎ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
◎ 実況込み
・ 2勢
・ READ2CH
・ i-ikioi

※ 要サイト名検索


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch