我有一个主目录,A有两个子目录B和C.
目录B包含头文件structures.c:
#ifndef __STRUCTURES_H
#define __STRUCTURES_H
typedef struct __stud_ent__
{
char name[20];
int roll_num;
}stud;
#endif
Run Code Online (Sandbox Code Playgroud)
目录C包含main.c代码:
#include<stdio.h>
#include<stdlib.h>
#include <structures.h>
int main()
{
stud *value;
value = malloc(sizeof(stud));
free (value);
printf("working \n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
main.c:3:24: error: structures.h: No such file or directory
main.c: In function ‘main’:
main.c:6: error: ‘stud’ undeclared (first use in this function)
main.c:6: error: (Each undeclared identifier is reported only …Run Code Online (Sandbox Code Playgroud) #include <stdio.h>
char *strcpy_(char *dst, char *src)
{
while((*src++ = *dst++)!= '\0')
return src;
}
main()
{
char src_str[] = "C programming language";
char dst_str[100];
printf("dst_str:%s\n", strcpy_(dst_str, src_str));
}
Run Code Online (Sandbox Code Playgroud)
什么时候我运行这个函数输出这是"编程语言"C失踪,这里发生了什么,我还有一个问题,我不想使用数组传递函数的参数意味着我不要使用char src_str[] = "C programming language"或char dst_str[100]取而代之的是我想使用像一个指针char *src_str = "C programming language"和char *dst_str,如果我用,所以我得到一个分割错误.