c语言-C语言中函数调用参数的问题......

问题描述

C语言中函数调用参数的问题......

for (ctr = 0; ctr <= numMov; ctr++)
{
printf("请输入电影的名字nn");
scanf_s("%c", namMov);
printf("请对该电影进行评分!nn");
scanf("%d", &rating);
if (rating>fisRating)
{
strcpy_s(favorite, namMov); -- 程序在此指出错误:函数调用中的参数太少
fisRating = rating;

            请问应该怎么解决???

解决方案

C语言的strcpy_s是三个参数的,
errno_t strcpy_s(
char *strDestination,
size_t numberOfElements,
const char *strSource
);第二个参数表示目标字符串的大小。两个参数的strcpy_s只有C++的编译器支持,
errno_t strcpy_s(char (&strDestination)[size], const char *strSource)
你的明显是C语言的程序,要用三个参数的

解决方案二:

strcpy_s正常来说是3个参数,关键看favorite是怎么定义的

http://www.cnblogs.com/woshitianma/p/3685661.html

解决方案三:

看你想做什么,strcpy_s用于复制字符串,你只有一个字符串一个长度,你想复制到哪里?

解决方案四:

还要加一个长度限制 TRUNCATE

解决方案五:

strcpy_s( favorite, strlen(favorit), namMov );

时间: 2016-04-27