C数据类型转换

时间:2015-10-08 22:24:08

标签: c

我可以确定数据转换总是成功吗?如果我有$str = 'Missing test tag. Please add the test tag and set it to true. i.e. <data><test>true</test></data>.'; echo htmlentities($str, ENT_XHTML); 并且我使用intmmap(2)是否已转换为intoff_t?为什么有这些不同的尺寸?还有转换功能吗?

1 个答案:

答案 0 :(得分:2)

我不确定你正在做的mmap函数的使用,因为mmap返回一个指针。

  • 关于转换,您基本上可以使用强制转换将任何变量转换为任何变量,但是您有责任验证这是否有效,例如:

    int i;
    double d;    
    d = 42.3;
    i = (int)d;
    printf("i = %d", i);
    

输出将为42,没有强制转换(int)某些编译器可能会抱怨并警告您将失去浮动精度。

  • 关于所有这些不同尺寸的原因,首先size_t表示尺寸,以便您可以将其视为unsigned int,关于为什么不使用unsigned int而不是typedef&#39; ed&#34; size_t&#34;,请参阅此帖子unsigned int vs size_t