小编dro*_*ath的帖子

如何将char附加到std :: string?

以下因错误而失败 prog.cpp:5:13: error: invalid conversion from ‘char’ to ‘const char*’

int main()
{
  char d = 'd';
  std::string y("Hello worl");
  y.append(d); // Line 5 - this fails
  std::cout << y;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我也试过,以下,编译但在运行时随机行为:

int main()
{
  char d[1] = { 'd' };
  std::string y("Hello worl");
  y.append(d);
  std::cout << y;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

抱歉这个愚蠢的问题,但我搜索了谷歌,我能看到的只是"char char to char ptr","char ptr to char array"等.

c++ string

159
推荐指数
6
解决办法
29万
查看次数

如何将int转换为小端字节数组?

我在C#中使用此函数将一个小端字节数组转换为整数:

int LE2INT(byte[] data)
{
  return (data[3] << 24) | (data[2] << 16) | (data[1] << 8) | data[0];
}
Run Code Online (Sandbox Code Playgroud)

现在我想把它转换回小端..有点像

byte[] INT2LE(int data)
{
  // ...
}
Run Code Online (Sandbox Code Playgroud)

任何的想法?

谢谢.

c# bit-manipulation

26
推荐指数
3
解决办法
3万
查看次数

在.NET中重新启动一个线程(使用C#)

我正在寻找一种方法来重新启动已被Abort()停止的线程.

public partial class MyProgram : Form
{
  private Thread MyThread = new Thread(MyFunction);
  private System.Windows.Forms.Button startStopBtn = new System.Windows.Forms.Button();
  public MyProgram()
  {
    MyThread.Start();
    startStopBtn += new EventHandler(doStop);
    startStopBtn.Text = "Stop";
  }
  private static void MyFunction()
  {
    // do something
  }
  private void doStop(object sender, EventArgs e)
  {
    MyThread.Abort();
    startStopBtn -= new EventHandler(doStop);
    startStopBtn += new EventHandler(doStart);
    startStopBtn.Text = "Start";
  }
  private void doStart(object sender, EventArgs e)
  {
    MyThread.Start(); // << Error returned when clicking the button for 2nd time …
Run Code Online (Sandbox Code Playgroud)

c# multithreading

13
推荐指数
3
解决办法
5万
查看次数

如何在C/C++中使用lame将mp3解码为wav?

我学习了如何使用lame_encode_buffer_interleaved这个问题将wav编码为mp3 :是否有任何LAME c ++ wraper\simplifier(在Linux Mac上工作,从纯代码中获胜)?

现在我想将mp3解码回wav.我知道有,lame_decode但我不知道如何使用它,因为它需要两个pcm缓冲区(pcm_lpcm_r).我不明白如何将它们组合成一个格式良好的wav文件,因为我真的不知道它们是如何工作的.

现在有人可以提供一个简单的工作示例,使用C/C++中的lame将mp3解码为wav吗?

谢谢.

c c++ lame

12
推荐指数
1
解决办法
8784
查看次数

将24位bmp转换为16位?

我知道.NET Framework附带了一个图像转换类(System.Drawing.Image.Save方法).

但我需要一个24位(R8G8B8)位图图像转换为16位(X1R5G5B5),我真的得上这种转换不知道,并在BMP头止跌24到16位的变化"工作(因为我们需要转换整个图像数据).

另外我想知道我是否可以控制图像抖动等.

想法?任何形式的帮助将不胜感激.

c# image

11
推荐指数
1
解决办法
2万
查看次数

将C#(.NET 2.0)应用程序部署为便携式应用程序?

是否可以将.NET 2.0应用程序部署为可移植可执行文件?这样我的程序就可以在没有在目标机器上安装.NET Framework 2.0的Flash Disk中运行.或者也许可以使用所需的.NET DLL分发我的程序,以便不需要安装框架?

我知道有一些替代工具可以将我的.NET exe转换为单个本机可执行文件,如RemoteSoft Salamander,Xenocode Postbuild和Thinstall,但不幸的是我买不起.

我也尝试使用Mono的mkbundle嵌入依赖项,但它搞砸了我的程序= \(没有XP视觉风格,打破了一些控件及其功能)

任何形式的帮助将不胜感激:)

谢谢.

fyi:我的IDE是Microsoft Visual C#2008 Express Edition,以.NET Framework 2.0为目标框架.

.net c# portability

9
推荐指数
2
解决办法
4030
查看次数

从Windows迁移到Ubuntu

我以前使用Microsoft Visual C++在Windows中进行编程,我需要将一些可移植程序(用可移植的C++编写)设置为跨平台,或者至少我可以为Linux和Windows发布我的程序的工作版本.

我是Linux应用程序开发的新手(并且很少使用操作系统本身).

所以,今天,我安装了Ubuntu 10.04 LTS(通过Wubi)并配备了Code :: Blocks和g ++编译器作为我的主要武器.然后我编译了我的第一个Hello World linux程序,我对输出程序感到困惑.

我可以通过Code :: Blocks中的"Build and Run"菜单选项来运行我的程序,但是当我尝试通过文件浏览器从外部启动已编译的应用程序时(在/ media/MyNTFSPartition/MyProject/bin/Release中;是的,我保存在我的NTFS分区中),程序没有显示出来.

为什么?我没想到了.

我需要改变我WindowsMicrosoft Visual Studio心态LinuxCode::Blocks思维方式.

所以我想出了这些问题:

  1. 如何在外部(IDE外部)执行我编译的linux程序?
    • 在Windows中,我只是运行生成的可执行(.exe)文件
  2. 我如何分发我的linux应用程序?
    • 在Windows中,我只是使用相应的DLL文件(如果有的话)分发可执行文件
  3. Linux中LIB(静态库)和DLL(动态库)的等价物是什么?如何使用它们?
    • 在Windows/Visual Studio中,我只需将所需的库添加到项目设置中的附加依赖项,我的程序将自动链接到所需的静态库(-ies)/ DLL.
  4. 是否可以使用C++库的"二进制形式"(如果提供),这样我就不需要重新编译整个库源代码了?
    • 在Windows中,是的.有时会提供预编译的*.lib文件.
  5. 如果我想在Linux中创建一个wxWidgets应用程序,我应该选择哪个包用于Ubuntu?wxGTK还是wxX11?我可以在X11下运行wxGTK程序吗?
    • 在Windows中,我使用wxMSW,当然.
  6. 如果问题没有.4是可能的,有预编译的wxX11/wxGTK库存在吗?没试过深谷歌搜索.

很抱歉提出了很多问题,但我对这些Linux开发基础知识感到困惑.

任何形式的帮助将不胜感激=)

谢谢.

c++ linux windows ubuntu

9
推荐指数
1
解决办法
2593
查看次数

Pascal中的'#"符号是什么?

例如:

x := #123;
Run Code Online (Sandbox Code Playgroud)

我试图搜索谷歌,但我根本不知道这意味着什么.

delphi pascal

7
推荐指数
2
解决办法
4660
查看次数

Android中的"ffmpeg有文本重定位"错误

我正在构建一个Android视频发送应用程序.我需要在上传之前压缩视频.在这种情况下,我选择使用这个FFmpeg的Android包装:https://github.com/hiteshsondhi88/ffmpeg-android-java

FFmpeg error: WARNING: linker: /data/data/com.mycompany.myapplication/files/ffmpeg has text relocations. This is wasting memory and prevents security hardening. Please fix.
    ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
    built on Oct  7 2014 15:08:46 with gcc 4.8 (GCC)
    configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat …
Run Code Online (Sandbox Code Playgroud)

video android ffmpeg

7
推荐指数
0
解决办法
2845
查看次数

使用MySQL C API和C++在MySQL数据库表中获取行

尝试使用带有MySQL C API的C++在mysql中获取表行时,我感到很困惑.

我可以在PHP中轻松完成,因为C++是一种强类型语言,因此我们还需要处理脏过程.

这就是我在PHP中的表现

$data = array();
$i = 0;
$query = mysql_query("SELECT * FROM `my_table`");
while($fetch = mysql_fetch_array($query))
{
  $data[$i] = $fetch['columntobefetched'];
  $i++;
}

但是如何在C++中使用MySQL API做同样的事情呢?

到目前为止,这是我的代码....带有令人困惑的死胡同...... x__x

   MYSQL *sqlhnd = mysql_init(NULL);
    mysql_real_connect(sqlhnd, "server", "user", "pass", "database", port, NULL, 0);

    mysql_query(sqlhnd, "SELECT * FROM `my_table`");
    MYSQL_RES *confres = mysql_store_result(sqlhnd);
    int totalrows = mysql_num_rows(confres);
    int numfields = mysql_num_fields(confres);
    MYSQL_FIELD *mfield;

    while((row = mysql_fetch_row(confres)))
    {
        for(i = 0; i < numfields; i++)
        {
            while(mfield = mysql_fetch_field(confres))
            {
                mfield->//??? I'm dead …

c c++ mysql api

6
推荐指数
1
解决办法
3万
查看次数

标签 统计

c# ×4

c++ ×4

c ×2

.net ×1

android ×1

api ×1

bit-manipulation ×1

delphi ×1

ffmpeg ×1

image ×1

lame ×1

linux ×1

multithreading ×1

mysql ×1

pascal ×1

portability ×1

string ×1

ubuntu ×1

video ×1

windows ×1