小编jon*_*ham的帖子

为什么'sizeof'会给错误的测量?

可能重复:
结果大小不符合结果

我有这个C++结构:

struct bmp_header {

  //bitmap file header (14 bytes)
  char Sign1,Sign2; //2
  unsigned int File_Size; //4
  unsigned int Reserved_Dword; //4
  unsigned int Data_Offset; //4

  //bitmap info header (16 bytes)
  unsigned int Dib_Info_Size; //4
  unsigned int Image_Width; //4
  unsigned int Image_Height; //4

  unsigned short Planes; //2
  unsigned short Bits; //2  
};
Run Code Online (Sandbox Code Playgroud)

它应该是30个字节,但'sizeof(bmp_header)'给我值32.什么错了?

c++ struct sizeof

5
推荐指数
2
解决办法
6314
查看次数

如何用MySQLI多次绑定param?

这就是我绑定我的params的方式:

$Con = mysqli_connect(...);
$Statement = mysqli_stmt_init($Con);

mysqli_stmt_prepare($Statement,"select * from users where name=? and email=?");
mysqli_stmt_bind_param("s",$Username);
mysqli_stmt_bind_param("s",$Email); <-- it fails here
Run Code Online (Sandbox Code Playgroud)

但是当我用以下方法替换对mysqli_stmt_bind_param的2次调用时,它在其他情况下工作正常:

mysql_stmt_bind_param("ss",$Username,$Email)
Run Code Online (Sandbox Code Playgroud)

问题是我有一系列的参数; 我必须逐个绑定它们因为我不知道params的数量

php mysql binding mysqli param

5
推荐指数
2
解决办法
5687
查看次数

在C中读取文本文件时,如何阻止Windows C库将"\ r \n"转换为"\n"?

我有一个普通的文本文件,行以正常\ r \n结束.但是,当使用"打开"和"读取"时,Windows将所有\ r \n转换为\n.我知道这意味着我必须以二进制模式打开文件,但函数'open'不提供此选项,它只有只读,只写或读写.

这是代码:

int File_Size = ...; 
char* Buffer = (char*)malloc(File_Size);

int Handle = open(File_Path,O_RDONLY);
read(Handle,Buffer,File_Size);
close(Handle);
Run Code Online (Sandbox Code Playgroud)

c windows newline

5
推荐指数
1
解决办法
348
查看次数

如何在PHP中的不同会话之间创建共享对象?

如何在PHP中的不同会话之间创建共享对象?

我正在考虑使用文件或MySQL内存表.使用文件不是一个好选择,因为它没有锁定并且速度很慢.使用MySQL内存表是一个不错的选择,但如何将类实例(对象)保存到表中?序列化对象并将其放到表中也很慢.

Option 1: MySQL memory table
Option 2: shm_attach,shm_detach,shm_get_var,shm_has_var,shm_put_var,..
Option 3: Memcache
Run Code Online (Sandbox Code Playgroud)

问题是使用MySQL内存表需要查询.Memcache不包含在标准PHP安装中.要在Windows上使用shm_*函数,需要使用选项"--enable-sysvsem"从源代码构建PHP,这需要在php.ini中设置开发人员可能无法一直访问的位置.

以上哪一个更好?还有其他选择吗?

php mysql memory session shared

5
推荐指数
1
解决办法
1085
查看次数

MinGW,用控制台构建GUI应用程序

我正在使用MinGW在Windows上构建我的应用程序.编译和链接时,选项"-mwindows"放在命令行中以具有Win32 API函数.

更具体一点:当没有"-mwindows"这样调用MinGW的GCC时:

c:\>g++ -c main.cpp 
c:\>g++ -o main.exe main.o
Run Code Online (Sandbox Code Playgroud)

上面2个命令行之后的'main.exe'将使用控制台运行,并且Win32 API函数将无法使用.

用这样的"-mwindows"调用MinGW的GCC时:

c:\>g++ -c main.cpp
c:\>g++ -o main.exe main.o -mwindows
Run Code Online (Sandbox Code Playgroud)

现在链接'-mwindows','main.exe'可以使用Win32 API,但是,它不会在应用程序运行时启动控制台.

这个"-mwindows"选项禁用控制台,这使我无法打印出调试信息.保持控制台和选项'-mwindows'的任何方法?

windows debugging console linker mingw

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

哪一个是官方的Qt SDK(C++)?

我找到了一些网站来下载Qt SDK:

  1. Nokia.com
  2. Qt-Project.org
  3. Digia.com

我无法猜出哪一个是官方SDK.诺基亚的产品甚至超过1GB,但Qt-Project的产品只有几百MB.Digia的最后一个需要购买.

c++ sdk qt nokia

5
推荐指数
1
解决办法
749
查看次数

在 C++ (Win32) 中快速获取 Windows 应用程序屏幕截图的方法?

当我的应用程序需要获取其他 Windows 应用程序的屏幕截图时,我遇到了问题。

我正在使用 win32api 'PrintWindow' 中的函数,但这效果不佳。它很慢,并且其他应用程序窗口内的某些组件显示为黑色矩形。

Devrexster 有一个名为 DExpose2 的应用程序(Mac OS 风格的任务切换器)。它可以非常快地获取其他应用程序的屏幕截图,非常快,甚至可以连续获取这些屏幕截图。

我猜它是使用 Direct3D 来获取应用程序的屏幕截图,而不是像我正在使用的那样使用 GDI。是否可以使用 Direct3D 来实现此目的?如果可能的话,哪种方式应该是最简洁的方式?

c++ windows directx winapi gdi

5
推荐指数
1
解决办法
5801
查看次数

Process.GetCurrentProcess().MainWindowHandle返回零

我正在尝试获取我的C#应用​​程序主窗体的窗口句柄(HWND)(该应用程序只有1个窗体).

互联网上的一些解决方案显示我可以使用:

Process.GetCurrentProcess().MainWindowHandle
Run Code Online (Sandbox Code Playgroud)

获取我的应用程序的当前进程的窗口句柄.但这个值总是零,什么都不对?

.net c# windows process winforms

5
推荐指数
1
解决办法
9356
查看次数

无法使qmlRegisterType工作

我在互联网上找到了一些qmlRegisterType的例子,但却无法使其正常工作.我创建了一个新的Qt Quick 2项目并添加了以下内容:

这是我的.pro文件:

#Add more folders to ship with the application, here
folder_01.source = qml/testlib
folder_01.target = qml
DEPLOYMENTFOLDERS = folder_01

#Libraries
QT += core gui widgets

#Additional import path used to resolve QML modules in Creator's code model
QML_IMPORT_PATH =

#Header files
HEADERS += main.hpp

#The .cpp file which was generated for your project. Feel free to hack it.
SOURCES += main.cpp

#Installation path
#target.path =

#Please do not modify the following two lines. Required for deployment.
include(qtquick2applicationviewer/qtquick2applicationviewer.pri) …
Run Code Online (Sandbox Code Playgroud)

c++ qt mingw qml qt5

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

如何在Tornado中处理对文件的HTTP GET请求?

我正在使用Ubuntu并有一个名为"webchat"的目录,在这个目录下有4个文件:webchat.py,webchat.css,webchat.html,webchat.js.

使用Tornado创建HTTP服务器时,我将根("/")映射到我的python代码:'webchat.py'如下:

import os,sys
import tornado.ioloop
import tornado.web
import tornado.httpserver

#http server for webchat
class webchat(tornado.web.RequestHandler):
  def get(self):
    self.write("Hello, chatter! [GET]")
  def post(self):
    self.write("Hello, chatter! [POST]")

#create http server
Handlers     = [(r"/",webchat)]
App_Settings = {"debug":True}
HTTP_Server  = tornado.web.Application(Handlers,**App_Settings)

#run http server
HTTP_Server.listen(9999)
tornado.ioloop.IOLoop.instance().start()
Run Code Online (Sandbox Code Playgroud)

访问http:// localhost:9999将引导我进入"网络聊天"处理程序(类网络聊天).但是,我想使用'webchat.py'访问同一目录中的其他文件,这些文件是webchat.css,webchat.html和webchat.js.

这个URL给了我404:http:// localhost:9999/webchat.html.这个问题的任何可能解决方案?

python chat http tornado web

4
推荐指数
2
解决办法
7644
查看次数

标签 统计

c++ ×4

windows ×4

mingw ×2

mysql ×2

php ×2

qt ×2

.net ×1

binding ×1

c ×1

c# ×1

chat ×1

console ×1

debugging ×1

directx ×1

gdi ×1

http ×1

linker ×1

memory ×1

mysqli ×1

newline ×1

nokia ×1

param ×1

process ×1

python ×1

qml ×1

qt5 ×1

sdk ×1

session ×1

shared ×1

sizeof ×1

struct ×1

tornado ×1

web ×1

winapi ×1

winforms ×1