xs

    8Nhiệt

    1Trả lời

    Tôi đang học cách gọi mã C++ từ Perl và bắt đầu tôi đang cố gắng tạo một đối tượng C++ cơ bản từ một tập lệnh Perl. Để làm điều này, tôi bắt đầu bằng cách thực hiện lệnh h2xs: h2xs -A -nMyClass Sau đó

    5Nhiệt

    1Trả lời

    Tôi đã viết trình bao bọc Perl XS cho thư viện C bao gồm khoảng ~ 80 chức năng. Ngay bây giờ chiến lược chung của tôi là thay thế lỗi từ một hàm C với PL_sv_undef và mã Perl đang gọi phải kiểm tra rõ

    6Nhiệt

    1Trả lời

    Làm cách nào tôi có thể tạo giá trị SV từ chuỗi bị hủy không có bản sao? Giống như newSVpv(const char*, STRLEN) nhưng không có bản sao và chuyển quyền sở hữu sang Perl (vì vậy Perl phải giải phóng bộ

    6Nhiệt

    3Trả lời

    Có vẻ như một số (nhiều?) Mô-đun trên CPAN được thực hiện một phần trong C bằng cách sử dụng XS, và có thể rơi trở lại thực hiện tinh khiết perl nếu cần thiết. Trong khi điều này là thông minh, nó rõ

    8Nhiệt

    1Trả lời

    Sử dụng XS tôi đang cố chuyển giá trị từ mảng C vào một mảng Perl có thể được sử dụng trong tập lệnh. Đây là mã từ file xs tôi: AV * DoubleArray::getPerlArray() CODE: r = newAV(); for(

    8Nhiệt

    1Trả lời

    Tôi là một người mới bắt đầu sử dụng XS và tôi đang tìm cách thay đổi mô-đun XS hiện có sử dụng thư viện C cũ hơn 15 năm. thư viện này). Vấn đề là tôi muốn để có thể sử dụng PerlIO chuỗi lừa đảo như:

    14Nhiệt

    3Trả lời

    này đã làm việc cho tôi trong 5.8 và 5.10, nhưng trong 5,12 mã của tôi tạo ra đối tượng này lạ không qr: # running "print Dumper($regex)" $VAR1 = bless(do{\(my $o = '')}, 'Regexp'); Trong khi in mộ

    5Nhiệt

    4Trả lời

    EDIT: Tôi đã tạo một ticket cho điều này có dữ liệu thay thế cho cách làm việc này. Tôi có updated the code trong nỗ lực sử dụng gọi lại của MY_CXT vì gcxt không được lưu trữ trên các chuỗi. Tuy nhiên

    7Nhiệt

    1Trả lời

    Tôi cần phải gọi một thói quen perl trong chương trình C của tôi. Các thói quen perl có các đối số sau đây: $a, $b, $c, trong đó $a và $b là số nguyên, $c là một chuỗi (có thể chứa các ký tự nhị phân)

    6Nhiệt

    2Trả lời

    Đúng nếu tôi sai, nhưng các mô-đun dựa trên XS và Dynaloader là những người sử dụng các đối tượng chia sẻ C/C++ (.so) và không phải là PP (Pure Perl)? Giả sử tôi có máy không có kết nối web (Solaris 1