我在c中以这种方式使用argc/argv有什么问题?

use*_*729 0 c argument-passing winmain

这有效:

int main( int argc, char *argv[])
{
....
gtk_init(&argc, &argv);
....
Run Code Online (Sandbox Code Playgroud)

但这不是:

int WINAPI WinMain (HINSTANCE p1, HINSTANCE p2, LPSTR argv, int argc) { 
....
gtk_init(&argc, &argv);
....
Run Code Online (Sandbox Code Playgroud)

有人能指出那里有什么问题吗?

小智 5

WinMain没有为您提供argc和argv - 请参阅http://msdn.microsoft.com/en-us/library/ms633559%28VS.85%29.aspx.您将命令行作为单个字符串(第三个参数)获得,您必须自己解析它.