widestring相关内容
David 对另一个问题的回答显示了一个 Delphi DLL 函数返回一个 WideString.我从没想过不使用 ShareMem 就可以做到这一点. 我的测试 DLL: function SomeFunction1: Widestring;标准调用;开始结果:= '你好';结尾;函数 SomeFunction2(var OutVar: Widestring): BOOL;标准调用;开
..
我正在使用 swprintf 将字符串构建到缓冲区中(使用循环等). const int MaxStringLengthPerCharacter = 10 + 1;wchar_t* pTmp = pBuffer;for ( size_t i = 0; i = 0);pTmp += nWritten;}*pTaskPlayers = '\0'; 如果在测试期间断言从未命中,我能确定它永远不会在实
..
我正在尝试使用TOpenDialog,以便将指向所选文件的路径传递到AdoConection并将Excel文件的内容加载到表中.我目前正在尝试下面的代码,但是代码的最后部分未连接到Excel并返回错误: [dcc32错误] sample_map.pas(80):E2010不兼容的类型:“字符串"和"TOpenDialog" 过程TForm1.Button1Click(Sender:TObject
..
我目前正在努力使用Java中的功能MessageBoxW.我已经成功地成功调用了user32库并使用了MessageBoxA函数.这是我的代码如下: package messagebox; import com.sun.jna.Library; import com.sun.jna.Native; public class MessageBox { public interfa
..
我有一个程序,该程序通过C FFI(通过winapi-rs)利用Windows API。函数之一期望将指向字符串的指针作为输出参数。该函数将其结果存储到此字符串中。我正在为该字符串使用类型为 WideCString 的变量。 我可以“只是”将可变引用传递给对字符串的引用到此函数中(在不安全的块内),还是应该使用 .into_raw()和 .from_raw()也会将变量的所有权移到C函数吗?
..
我们可以将 wmain()函数与Unix编译器一起使用还是只能在Windows上使用? 解决方案 main 的唯一标准签名是: int main(void); int main(int argc,char * argv []); 但是,独立的实现可以提供扩展/允许其他签名。但是,这些都不是可移植的。 wmain 看起来像Windows / VS。在* nix
..
我们在引擎中内置了一个注释系统,程序员可以使用该注释系统为各种公开的变量/对象添加注释,然后GUI前端将其用作工具提示和帮助. 最近,某些工具提示开始崩溃,并且在浪费大量时间后,我一直将其跟踪到以下字符:’,除非我弄错了,否则它是unicode字符,不能以ASCII格式使用. 考虑此答案,我认为wstring将解决此问题.在对较大的项目进行更改之前,我创建了一个测试项目,以查看wstr
..
我正在尝试将字符串转换为'LPCTSTR',但是,出现以下错误. 错误: cannot convert from 'const char *' to 'LPCTSTR' 代码: std::string str = "helloworld"; LPCTSTR lp = str.c_str(); 也尝试过: LPCTSTR lp = (LPCTSTR)str.c_str
..
我在unix中将wstring转换为jstring时出现问题,因为linux上的wchar_t的大小为4个字节(不像2个字节,因为我不能使用wchar_t转换为jchar)。 任何人都可以帮助我吗? 谢谢, Reza 解决方案 你必须使用类似 iconv()的东西,因为C ++宽字符串有一个不透明的(读取:未知)编码,而Java期望UTF16。试试这个: #inclu
..
我不能使用Delphi开发的dll的功能。我在转换类型时遇到一些困难。 这是我要调用DLL的函数: 函数rData(ID:Cardinal; queue:WideString):WideString; STDCALL; 我的C ++代码如此: typedef string(* ReturnDataSPL)(DWORD,string); 字符串结果;
..
David对另一个问题的回答显示了一个返回WideString的Delphi DLL函数。我从来没有想过这是可能的,没有使用 ShareMem 。 我的测试DLL: function SomeFunction1:Widestring; STDCALL; begin 结果:='Hello'; 结束 函数SomeFunction2(var OutVar:Widestring)
..
我正在尝试构建一个(测试) WideString : á( U + 00E1小写字母拉丁语A with acute ) 但使用它的分解形式: 小提琴A( U + 0061 )组合急速ACCENT( U + 0301 ) 所以我有代码片段: var test:WideString; begin test:=#$ 0061#$ 0301; Message
..
我使用Delphi7(非unicode VCL),我需要在TFileStream中存储很多WideStrings。我不能使用TStringStream作为(宽)字符串与二进制数据混合,该格式被预计加速加载和写入数据...但是我相信当前正在加载/写入字符串可能是一个我的代码的瓶颈... 目前我正在写一个字符串的长度,然后通过char ... 写入它,加载时,首先我'加载长度,然后通过char
..
我发现一个Windows API函数执行字符串的“自然比较”。它定义如下: int StrCmpLogicalW( LPCWSTR psz1, LPCWSTR psz2 ); 要在Delphi中使用它,我以这种方式宣布: interface 函数StrCmpLogicalW(psz1,psz2:PWideChar):integer;标准 实现 函数
..
David对另一个问题的回答显示了一个返回WideString的Delphi DLL函数。我从来没有想过这是可能的,没有使用 ShareMem 。 我的测试DLL: function SomeFunction1:Widestring;标准 begin 结果:='Hello'; 结束 函数SomeFunction2(var OutVar:Widestring):BOOL;标准
..
这是对此问题的跟进。 AnsiString 是一个类吗? string ?这是一个类吗?和 char [] ? 我们可以说 WideString 是双字节字符的包装器, AnsiString 是单字节字符的包装, char [] 是单字节字符的数组? string 不确定是什么... 不知道我有不同类型的字符串类型 解决方案 AnsiString 是一个类提供的C +
..
我需要以低级别处理宽字符串中存储的数据。我可以使用以下方法转换 字节的向量: typedef unsigned char Byte; wstring mystring = L“my wide string”; Byte const * pointer = reinterpret_cast(& mystring [0]); size_t size
..
我无法使用在delphi中开发的dll的功能。我对类型的转换有些困难。 这是我要调用DLL的函数: function rData(ID:Cardinal; queue:WideString):WideString; stdcall; 我在C ++中的代码是: typedef string(* ReturnDataSPL)(DWORD,string);
..
如何在C ++中将wchar_t字符串从大写转换为小写? 字符串包含日语,中文,德语和希腊字符。 我想过使用towlower ... http://msdn.microsoft.com/zh-CN/library/8h19t214%28VS.80%29.aspx 。但文档说明: 下拉菜单的情况转换是特定于区域设置的。只有与当前语言环境相关的字符才会更改。 编辑:
..
我的代码基本上是这样: wstring japan = L“日本” wstring message = L“欢迎!日本是”; message + = japan; wprintf(message.c_str()); 我想使用宽字符串,但我不知道它们是如何输出的,所以我使用wprintf。当我运行如: ./ widestr | hexdump
..