小编T.T*_*.T.的帖子

如何防止缓冲区溢出将double转换为char?

我正在将double转换为char字符串:

char txt[10];
double num;

num = 45.344322345

sprintf(txt, "%.1f", num);
Run Code Online (Sandbox Code Playgroud)

并使用".1f"截断小数位,到十分位数.
ie - txt包含45.3

我通常在sprintf中使用precision来确保char缓冲区不会溢出.我怎么能在这里也截断小数,而不使用snprintf?

(即如果由于某种原因,num = 345694876345.3)

谢谢

编辑如果num是>缓冲区,结果不再重要,只是不想崩溃.不确定在这种情况下最有意义的是什么.

EDIT2我应该比标签更清晰,这是一个C程序.我在C程序中使用snprintf时遇到问题.我不想添加任何第三方库.

c arrays string

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

如何在CSV文件的顶部插入数据?

我怎样才能回到csv文件的最开头并添加行?

(我使用fprintf()从C打印到CSV文件.在打印数千行(5列)数据的最后,我想回到文件的顶部并插入一些动态标题数据(根据事情如何打印一切).)

谢谢.

c csv file

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

哪些 zlib 函数与 WinZip 兼容?

我无法使用deflate()WinZip 打开压缩文件。gz() 是唯一与 WinZip 兼容的吗?或者我必须使用某种模式来调用deflate()

c compression algorithm gzip

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

如何删除尾随空格但不删除字符串中的空格(也不是开头)?

我有一个不同长度的字符串,后面通常是空格(根据字符串的不同长度).

ie - 字符串总是20个字符长

var data = "DUR IT R4356        " //with 8 trailing
Run Code Online (Sandbox Code Playgroud)

或者字符串可以是

var data = "11& 444 DTF# 5676   " //with 3 trailing
Run Code Online (Sandbox Code Playgroud)

什么是摆脱那些尾随空白的最佳方法?

我在想一些JS函数转到最后一个不是空格的字符,然后用空字符串替换所有空格?

有什么建议?如果jQuery对此更好,我也对此持开放态度......

谢谢.

javascript string jquery

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

为什么strncpy不能使用malloc分配的字符串?

char* temp;

temp = (char*) malloc (strlen(window->entry.value)+1);
//strncpy( temp, window->entry.value, sizeof(temp) ); DOESN"T WORK
memcpy (temp, window->entry.value, strlen(window->entry.value) + 1); //WORKS
Run Code Online (Sandbox Code Playgroud)

(其中window-> entry.value是一个字符串.)

谢谢.

c string malloc memory-management

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

如何正确比较两个未签名的字符?

期待比较两个

BYTE PhysicalAddress[MAX_ADAPTER_ADDRESS_LENGTH];
Run Code Online (Sandbox Code Playgroud)

来自IP_ADAPTER_ADDRESSES结构

其中byte在windows中定义为 typedef unsigned char BYTE;

我需要比较记忆吗?

谢谢!

c c++ windows networking char

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

可以从本地函数调用类的私有函数吗?

简化代码来表达概念:

class classA
{

public:

private:
   int a;
   seta(int x);
};

//local prototype
void somefunction();

int main()
{
  classA object; //create an object of the class

  somefunction(object);
  return 0;
}

void somefunction(classA &object)
{

  object.seta(5);    
}
Run Code Online (Sandbox Code Playgroud)

}

如果我移动seta()到该类的公共部分,则没有错误并且它会执行.

但是,如果我移动seta()到私有部分,我会收到以下错误:

错误C2248:' anonymous-namespace'::classA::seta' : cannot access private member declared in class 'anonymous-namespace':: classA'

如果该函数是私有的,只有这个类调用它,为什么会出现问题?

编辑我将对象从main传递给本地函数

c++ oop class object

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

我是否必须在VS 2008中使用"Visual"C++?

我是Visual Studio 2008(.NET Framework 3.5)的新手,正在开发Windows窗体应用程序.

启动IDE时,新项目的唯一选项属于以下类别:

  • Visual Basic
  • Visual C#
  • Visual C++

我做到了 Visual C++ -> CLR -> Windows Forms Application

但是,模板代码位于"Visual C++"语法中.

如何使用Visual Studio 2008使用普通的C/C++创建新的GUI项目?

请注意,我上次这样做是在Visual Studio C++ 6.0中使用MFC如果我错过了基础主体请解释.

谢谢!

示例:http://msdn.microsoft.com/en-us/library/ms235634%28v=vs.90%29.aspx

c c++ windows winapi winforms

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

写入共享内存的频率限制?

单线程应用程序(C++)连续锁定,写入和解锁共享内存 - 每秒四次(循环程序设置为每秒运行一次,循环中有4次写入且没有读取).

EnterCriticalSection的(CS);
WriteToSharedMem();
LeaveCriticalSection(CS);

另一个应用程序(C)将再次访问这个共享内存每隔几分钟.

以这个速率写共享内存是否有任何问题?

Windows XP
C++

c c++ memory windows shared-memory

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

其他列的SQL ORDER BY行为?

列类型字符.

COLUMN 1       COLUMN 2
   1x              A
   1x              B
   2x              A
   2x              B
   3x              A
   3x              B
Run Code Online (Sandbox Code Playgroud)

ORDER BY COLUMN2结果:

COLUMN 1       COLUMN 2
   1x              A
   2x              A
   3x              A
   1x              B
   2x              B
   3x              B
Run Code Online (Sandbox Code Playgroud)

对于这种形式的数据,看起来第一列也是排序的,实际上是我正在寻找的结果; (按排序的第二列分组,在第一列中排序,由第一列排序)

首先,这种行为是否得到保证?

接下来,如果是这样,SQL规范这个行为是什么?

最后,这是实现预期结果的正确方法吗?

谢谢.

sql database position sql-order-by

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