geçersiz argüman ben forumu aradı ve bu sorunun cevabını bulamıyorum. Ortak görünmektedir, ancak belirtilen düzeltmelerin hiçbiri uygulanabilir değildir.fopen döner C
Bu dosyayı açmak için benim kodudur:
#include <stdio.h>
#include <string.h>
void main() {
FILE *input;
char path[200];
printf("Enter the full file path and file name in the following format:"
"\nC:\\Users\\Username\\etc......\\filename.extension\n");
fgets(path, 200, stdin);
printf("%s",path);
input=fopen(path,"r");
if (input==NULL) {
perror("The following errors were encountered");
return(-1);
}
}
printf(%s,path)
doğru ben açmak istediğiniz dosyanın yolunu ve adını görüntüler, ancak fopen her zaman geçersiz argüman döndürür. Ayrıca, fopen'deki bir işaretçiyi kullanmayı denedim, ancak bu her zaman programı çöker.
Bunun nedeni 'path' BTW bir sondaki satır karakteri ... – isedev
içerecektir olduğunu. Ayrıca, 'dönüş' bir işlev değildir ve bu nedenle argümanı etrafında n parantezler gerektirir. – Deduplicator
Bir yan notta: ana geçersiz olarak bildirildiğinde, -1 değerini döndürüyorsunuz. Bunu yapma. Ana'yi int olarak bildirin ve tüm kod yollarından bir şeyler döndürün. Bu bir kırılma hatası olmasa da, kötü bir tarz. – jpw