相关疑难解决方法(0)

为什么strncpy不安全?

我想找出为什么strncpy被认为是不安全的.有没有人有关于此的任何文档或使用它的漏洞利用示例?

c c++ string strncpy

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

结构中的字符数组 - 不兼容的赋值?

我试图找出一个结构真的'是'并遇到问题,所以我真的有两个问题:

1)'sara'中保存了什么?它是指向结构的第一个元素的指针吗?

2)更有趣的问题:为什么不编译?GCC说"test.c:10:错误:分配中的不兼容类型",我无法弄清楚为什么......(这部分已经通过你的答案解决了,太棒了!)

#include <stdio.h>

struct name {
    char first[20];
    char last[20];
};

int main() {
    struct name sara;
    sara.first = "Sara";
    sara.last = "Black";
    printf("struct direct: %x\n",sara);

    printf("struct deref: %x\t%s\n", *sara, *sara);


}
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

c struct char

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

使用strncpy时出现异常

以下代码片段在执行strncpy函数时以异常结束:

#define MAX_FILENAME_LEN 127

typedef struct {
unsigned long nameLength;
char name[MAX_FILENAME_LEN + 1];
} filestructure;

char *fileName;

strncpy( fileName, filestructure->name, MAX_FILENAME_LEN );
*( fileName + MAX_FILENAME_LEN+1 ) = 0; 
Run Code Online (Sandbox Code Playgroud)

Ayone知道什么可能出错?在文件结构中,我有一个50个字符长的文件名,所以它在界限内...我真的有点迷失了可能导致这个简单代码的问题...

c++ string pointers

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

标签 统计

c ×2

c++ ×2

string ×2

char ×1

pointers ×1

strncpy ×1

struct ×1