fgets

    0熱度

    2回答

    我想知道我的代碼有什麼問題。我通常使用scanf,但我試圖得到fgets的竅門。但是,當我嘗試打印一個char數組,其中數組的每個元素都在一個單獨的行上,但即使我將該數組的限制定義爲任意高數字,它也只有十一行的限制。我是一名初學者程序員,所以儘量儘可能簡單。 #include <stdio.h> #define max_line 4096 int main(void) { char

    1熱度

    3回答

    我想在這裏使用循環。但我的第二個fgets不能正常工作! 在1st loop中沒問題!但在此之後,它跳過它的第二個fgets! 如何解決它? 由於 #include<stdio.h> #include<string.h> int main (void) { char first_line[1000]; char second_line[2]; int i,n,j,k; int cou

    -3熱度

    2回答

    我從教程關於C的fgets()複製下面的程序。它不會打印出文件的內容到終端: #include <stdio.h> #include <stdlib.h> #define MAX_TEXT 1000 int main(int argc, char *argv[]) { FILE *file = NULL; char str[MAX_TEXT] = "";

    4熱度

    1回答

    我正在試驗一些用於shell實現的C代碼,發現fgets()在我分叉進程後返回重複行,我無法理解,我將不勝感激任何幫助。 我的問題是:分叉是否更改父進程中打開文件中的偏移量?這似乎發生在我的程序中。 從下面@Vadim波諾馬廖夫和我的理解答案: 與fgets()不是線程安全的(或嚴格來說,它是,但把一個進程導致標準輸入以某種方式被初始化,導致共享文件偏移的更改)。 的代碼是這樣的: int mai

    0熱度

    2回答

    出於某種原因,一旦我輸入要搜索的字符,主循環將終止,但目的是爲了能夠輸入一行然後搜索一個字符你輸入一個空行(不輸入任何內容)。基本上我會想無限地做第1步和第2步,直到我輸入任何內容並按回車。爲什麼這不起作用?感謝任何人的幫助! 此外,一個小問題,如何在輸入字符進行搜索後清除任何垃圾? #include <stdio.h> #define SIZE 41 int CharIsAt(char *p

    2熱度

    2回答

    我曾經使用get,但後來我聽說它已從c11中刪除,並且它的整體非常危險。 所以我做了一些搜索,發現你可以使用fgets()來做同樣的事情。 問題是,當我使用fgets()時,它似乎也複製了行的末尾,最終導致了額外的不需要的行。 要告訴你我是什麼意思: //if I have char key[30]; fgets(key, sizeof(key), stdin); //now if end

    0熱度

    1回答

    FILE *fp = fopen("story.txt", "r"); if(fp == NULL){ printf("\nError opening file.\nExiting program.\n"); exit(1); } char text[100]; while(fgets(text, 100, fp) != NULL){ printf("%s"

    6熱度

    4回答

    此代碼的問題在於,用戶在命令行中輸入某些文本後不會實際打印任何內容。 該代碼的目的是接受用戶通過命令提示符在文件名後輸入的行數。然後用戶將輸入一些內容以反轉。該程序應該爲每行反轉用戶輸入。 例輸入=紅色的大狗 示例輸出=狗紅色大的 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #d

    -3熱度

    1回答

    #include "stdafx.h" #include "stdlib.h" #include <ctype.h> int num = 0; int i = 0; int ch = 0; int letter_index_in_alphabet(int ch) { if (isalpha(ch) == true) { char temp_str[2]

    0熱度

    2回答

    我需要我的程序輸入用戶想要輸入的句子數,然後輸入這些句子。然後,通過傳遞函數letter(),我想讓它計算每個字母在字符串中出現的次數。不過,我遇到了以下問題: 當我輸入的行數,該程序只要求用戶輸入1小於輸入的號碼(即,如果我想2句,我只提示一)。 字母計數無法正常工作。這似乎是一種隨機的。 另外我想知道我是否正確使用我的二維數組(即我是否正確填充它,是否正確地將它傳遞給函數)。對於數組str[]